<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://sqlserver.ro/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>T-SQL</title><link>http://sqlserver.ro/forums/15/ShowForum.aspx</link><description /><dc:language>en</dc:language><generator>CommunityServer 2.1 SP2 (Build: 61129.1)</generator><item><title>Re: begin tran sql server 2000</title><link>http://sqlserver.ro/forums/thread/4300.aspx</link><pubDate>Wed, 05 Mar 2008 23:28:41 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:4300</guid><dc:creator>B_gd_n[ ]Sahlean</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/4300.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=4300</wfw:commentRss><description>&lt;BLOCKQUOTE&gt;&lt;div&gt;&lt;img src="http://sqlserver.ro/Themes/default/images/icon-quote.gif"&gt; &lt;strong&gt;Alex:&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;nu pot modifica absolut nimic in procedura2....regulile firmei....exista o alta solutie?&lt;/p&gt;
&lt;p&gt;multumesc&lt;/p&gt;
&lt;p&gt;alex.&lt;/p&gt;&lt;/div&gt;&lt;/BLOCKQUOTE&gt;&lt;br&gt;O solutie buna e cea propusa de andrei&lt;br&gt;&lt;span style="color:Black;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;...&lt;br&gt;&lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;begin&lt;/span&gt; &lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;tran&lt;/span&gt;&lt;br&gt;&lt;br&gt;&lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;DECLARE&lt;/span&gt; @RC &lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;int&lt;/span&gt;&lt;br&gt;&lt;br&gt;&lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;EXECUTE&lt;/span&gt; @RC = procedura2&lt;br&gt;&lt;br&gt;&lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;if&lt;/span&gt; @RC = 0&lt;br&gt;&lt;br&gt;&lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;begin&lt;/span&gt;&lt;br&gt;&lt;br&gt;    &lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;Rollback&lt;/span&gt; &lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;tran&lt;/span&gt;&lt;br&gt;&lt;br&gt;    &lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;return&lt;/span&gt;&lt;br&gt;...&lt;/span&gt;&lt;br&gt;dar pleaca de la premisa ca procedura2 intoarce un INT care reflecta daca procedura sa executat sau nu cu succes. Banuiesc ca aceasta solutie ar pp. modificarea procedurii 2 fapt care nu se doreste.&lt;br&gt;&lt;br&gt;Ceea ce vrei tu ar putea fi denumita de un coleg ca o "ciobănie" sau un "oltenism".&lt;br&gt;&lt;b&gt;&lt;u&gt;&lt;font color="#ff1493"&gt;O posibila ideea ar fi sa verifici daca sunt prezente in baza de date anumite rezultate (valori, inregistrari, etc.) care sa indice daca procedura2 sa executat cu succes sau nu.&lt;/font&gt;&lt;/u&gt;&lt;br&gt;&lt;/b&gt;&lt;br&gt;De exemplu, putem pp. ca procedura2 daca este executata cu succes atunci rezultatul va fi ca in tabela A sunt adaugate inregistrari (minim o inregistrare). Daca nu, atunci nr. inregistrarilor din A va râmâne nemodificat dupa execuţia procedurii 2.&lt;br&gt;&lt;span style="color:Black;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;...&lt;br&gt;&lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;begin&lt;/span&gt; &lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;tran&lt;/span&gt;&lt;br&gt;&lt;br&gt;&lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;DECLARE&lt;/span&gt; @nr_inregistrari_inainte &lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;INT&lt;/span&gt;&lt;br&gt;&lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;DECLARE&lt;/span&gt; @nr_inregistrari_dupa &lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;INT&lt;/span&gt;&lt;br&gt;&lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;SET&lt;/span&gt; @nr_inregistrari_inainte = (&lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;SELECT&lt;/span&gt; &lt;span style="color:Fuchsia;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;COUNT&lt;/span&gt;(*) &lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;FROM&lt;/span&gt; A)&lt;br&gt;&lt;br&gt;&lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;EXEC&lt;/span&gt; procedura2&lt;br&gt;&lt;br&gt;&lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;SET&lt;/span&gt; @nr_inregistrari_dupa = (&lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;SELECT&lt;/span&gt; &lt;span style="color:Fuchsia;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;COUNT&lt;/span&gt;(*) &lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;FROM&lt;/span&gt; A)&lt;br&gt;&lt;br&gt;&lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;if&lt;/span&gt; @nr_inregistrari_inainte = @nr_inregistrari_dupa&lt;br&gt;&lt;br&gt;&lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;begin&lt;/span&gt;&lt;br&gt;&lt;br&gt;&lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;Rollback&lt;/span&gt; &lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;tran&lt;/span&gt;&lt;br&gt;&lt;br&gt;&lt;span style="color:Blue;background-color:transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;return&lt;/span&gt;&lt;br&gt;...&lt;br&gt;&lt;br&gt;&lt;/span&gt;Evident tb. avut in vedere faptul ca aplicatia ruleaza intr-un mediu multutilizator ...&lt;br&gt;&lt;br&gt;</description></item><item><title>Re: begin tran sql server 2000</title><link>http://sqlserver.ro/forums/thread/4299.aspx</link><pubDate>Wed, 05 Mar 2008 22:16:17 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:4299</guid><dc:creator>ignatandrei</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/4299.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=4299</wfw:commentRss><description>&lt;BLOCKQUOTE&gt;&lt;div&gt;&lt;img src="http://sqlserver.ro/Themes/default/images/icon-quote.gif"&gt; &lt;strong&gt;Alex:&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;nu pot modifica absolut nimic in procedura2....regulile firmei....exista o alta solutie?&lt;/p&gt;
&lt;p&gt;multumesc&lt;/p&gt;
&lt;p&gt;alex.&lt;/p&gt;&lt;/div&gt;&lt;/BLOCKQUOTE&gt;&lt;br&gt;Cu miinile legate la spate ? Nu prea cred ca poti sa iti dai seama daca procedura2 a dat eroare sau nu daca nu intoarce cod de eroare...&lt;br&gt;</description></item><item><title>Re: begin tran sql server 2000</title><link>http://sqlserver.ro/forums/thread/4297.aspx</link><pubDate>Wed, 05 Mar 2008 18:41:13 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:4297</guid><dc:creator>crestinul</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/4297.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=4297</wfw:commentRss><description>&lt;BLOCKQUOTE&gt;&lt;div&gt;&lt;img src="http://sqlserver.ro/Themes/default/images/icon-quote.gif"&gt; &lt;strong&gt;Alex:&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;
&lt;P&gt;salut,&lt;/P&gt;
&lt;P&gt;am si eu o intrebare cu tranzactiile astea&lt;/P&gt;
&lt;P&gt;am o &lt;STRONG&gt;procedura1&lt;/STRONG&gt; in care am &lt;STRONG&gt;begin tran&lt;/STRONG&gt; si la sfarsit &lt;STRONG&gt;commit&lt;/STRONG&gt; sau &lt;STRONG&gt;rollback&lt;/STRONG&gt; functie de erori...am eroare face rollback nu am eroare face commit&lt;/P&gt;
&lt;P&gt;si in interiorul careia se apeleaza o alta &lt;STRONG&gt;procedura2&lt;/STRONG&gt; care la randul ei are un &lt;STRONG&gt;begin tran&lt;/STRONG&gt; si &lt;STRONG&gt;rollback&lt;/STRONG&gt; sau &lt;STRONG&gt;commit&lt;/STRONG&gt; (la fel functie de erori)&lt;/P&gt;
&lt;P&gt;in&amp;nbsp;procedura2 nu pot umbla deloc pt a o modifica....deci modificarile pe care le pot face sunt doar in procedura1&lt;/P&gt;
&lt;P&gt;daca apare o eroare in procedura2 adica trece pe rollback spune ca nu poate face rollback pt ca nu are un begin tran...cum pot evita asta&lt;/P&gt;
&lt;P&gt;exemplu:&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;&lt;STRONG&gt;begin&amp;nbsp; tran &lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;select 1&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;begin tran&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;select 2&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rollback tran&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;commit tran&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;asta e eroarea primita&lt;BR&gt;The COMMIT TRANSACTION request has no corresponding BEGIN TRANSACTION.&lt;/P&gt;
&lt;P&gt;multumesc&lt;/P&gt;
&lt;P&gt;alex.&lt;/P&gt;
&lt;P&gt;asa nu merge&lt;/P&gt;
&lt;P&gt;alter procedure 1&lt;/P&gt;
&lt;P&gt;begin tran&lt;/P&gt;
&lt;P&gt;try &lt;/P&gt;
&lt;P&gt;exec procedure2&lt;/P&gt;
&lt;P&gt;catch &lt;/P&gt;
&lt;P&gt;roolbak tran&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/div&gt;&lt;/BLOCKQUOTE&gt;</description></item><item><title>Re: begin tran sql server 2000</title><link>http://sqlserver.ro/forums/thread/4296.aspx</link><pubDate>Wed, 05 Mar 2008 18:29:20 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:4296</guid><dc:creator>Alex</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/4296.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=4296</wfw:commentRss><description>&lt;P&gt;nu pot modifica absolut nimic in procedura2....regulile firmei....exista o alta solutie?&lt;/P&gt;
&lt;P&gt;multumesc&lt;/P&gt;
&lt;P&gt;alex.&lt;/P&gt;</description></item><item><title>Re: begin tran sql server 2000</title><link>http://sqlserver.ro/forums/thread/4294.aspx</link><pubDate>Wed, 05 Mar 2008 17:22:50 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:4294</guid><dc:creator>ignatandrei</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/4294.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=4294</wfw:commentRss><description>&lt;BLOCKQUOTE&gt;&lt;div&gt;&lt;img src="http://sqlserver.ro/Themes/default/images/icon-quote.gif"&gt; &lt;strong&gt;Alex:&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;incerc sa mai explic inca o data...poate de data asta imi iese mai bine :)&lt;/p&gt;
&lt;p&gt;am facut o procedura1 care contine&lt;/p&gt;
&lt;p&gt;begin tran&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;exec procedura2&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;insert ....&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;update....&lt;/p&gt;
&lt;p&gt;commit&lt;/p&gt;
&lt;p&gt;procedura2 contine la randul ei begin tran..........commit&lt;/p&gt;
&lt;p&gt;cum fac daca am o eroare in procedura1 si face rollback sa faca rollback si in procedura2 fara a modifica procedura2&lt;/p&gt;
&lt;p&gt;multumesc.&lt;/p&gt;
&lt;p&gt;alex.&lt;/p&gt;&lt;/div&gt;&lt;/BLOCKQUOTE&gt;&lt;br&gt;In procedura 2 fa SAVE&amp;nbsp; TRAN @ProcName , si Commit TRAN @ProcName&amp;nbsp; / Rollback TRAN @ProcName &lt;br&gt;si intoarce 1 sau 0&amp;nbsp; - daca ai facut commit sau rollbacl&lt;br&gt;La proc1 , dupa fiecare linie&amp;nbsp; , verifici @@Error&lt;br&gt;&lt;br&gt;acum cod din proc 1&lt;br&gt;&lt;p&gt;begin tran&lt;/p&gt;&lt;p&gt;DECLARE @RC int&lt;br&gt;&lt;/p&gt;
&lt;p&gt;EXECUTE @RC = procedura2&lt;/p&gt;&lt;p&gt;if @RC = 0&lt;br&gt;&lt;/p&gt;&lt;p&gt;begin&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Rollback tran&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return&lt;br&gt;&lt;/p&gt;&lt;p&gt;end&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;insert ....&lt;/p&gt;&lt;p&gt;if @@Error&amp;nbsp; &amp;lt;&amp;gt; 0&lt;/p&gt;&lt;p&gt;begin&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Rollback tran&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;end&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;update....&lt;/p&gt;
&lt;p&gt;if @@Error&amp;nbsp; &amp;lt;&amp;gt; 0&lt;/p&gt;
&lt;p&gt;begin&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Rollback tran&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;end&lt;br&gt;
&lt;/p&gt;


&lt;p&gt;&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;commit&lt;/p&gt;&lt;br&gt;</description></item><item><title>Re: begin tran sql server 2000</title><link>http://sqlserver.ro/forums/thread/4293.aspx</link><pubDate>Wed, 05 Mar 2008 16:42:31 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:4293</guid><dc:creator>Alex</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/4293.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=4293</wfw:commentRss><description>&lt;P&gt;incerc sa mai explic inca o data...poate de data asta imi iese mai bine :)&lt;/P&gt;
&lt;P&gt;am facut o procedura1 care contine&lt;/P&gt;
&lt;P&gt;begin tran&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;exec procedura2&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;insert ....&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;update....&lt;/P&gt;
&lt;P&gt;commit&lt;/P&gt;
&lt;P&gt;procedura2 contine la randul ei begin tran..........commit&lt;/P&gt;
&lt;P&gt;cum fac daca am o eroare in procedura1 si face rollback sa faca rollback si in procedura2 fara a modifica procedura2&lt;/P&gt;
&lt;P&gt;multumesc.&lt;/P&gt;
&lt;P&gt;alex.&lt;/P&gt;</description></item><item><title>Re: begin tran sql server 2000</title><link>http://sqlserver.ro/forums/thread/4292.aspx</link><pubDate>Wed, 05 Mar 2008 16:35:47 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:4292</guid><dc:creator>ignatandrei</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/4292.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=4292</wfw:commentRss><description>pentru fiecare Procedura stocata poti face &lt;br&gt;&lt;br&gt;DECLARE @ProcName nvarchar(128);
&lt;br&gt;SET @ProcName = OBJECT_NAME(@@PROCID);&lt;br&gt;&lt;br&gt;SAVE&amp;nbsp; TRAN @ProcName&lt;br&gt;&lt;br&gt;&amp;lt;cod&amp;gt;&lt;br&gt;if succes&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; COMMIT TRANSACTION @ProcName &lt;br&gt;else&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ROLLBACK TRANSACTION @ProcName &lt;br&gt;&lt;br&gt;&lt;br&gt;apoi,&amp;nbsp; in tranzactia mare, in functie de ce ti-au intors PS-urile, decizi Rollback sau commit ( in general, daca una din PS a facut Rollback, tranzactia mare face rollback)&lt;br&gt;</description></item><item><title>Re: begin tran sql server 2000</title><link>http://sqlserver.ro/forums/thread/4291.aspx</link><pubDate>Wed, 05 Mar 2008 16:20:49 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:4291</guid><dc:creator>Diana</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/4291.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=4291</wfw:commentRss><description>&lt;P&gt;Vezi ce valoare are @@TRANCOUNT inainte si dupa apelul procedurii. In BOL de SQL 2005 exista un capitol "&lt;SPAN id=nsrTitle&gt;Rollbacks and Commits in Stored Procedures and Triggers&lt;/SPAN&gt;" care pare sa fie OK si pentru cazul tau.&lt;/P&gt;
&lt;P&gt;* Cred ca te poti lipsi de tranzactia "din jurul" lui select2 din exemplul tau (?). Btw, exemplul e cam "cetos"...&lt;/P&gt;</description></item><item><title>Re: begin tran sql server 2000</title><link>http://sqlserver.ro/forums/thread/4290.aspx</link><pubDate>Wed, 05 Mar 2008 16:12:17 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:4290</guid><dc:creator>xmldeveloper</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/4290.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=4290</wfw:commentRss><description>&lt;P&gt;Un ROLLBACK face undo la toate tranzactiile precedente.&lt;/P&gt;
&lt;P&gt;Nu puteti avea mai multe ROLLBACK TRAN.&lt;/P&gt;
&lt;P&gt;Incercati sa folositi Savepoints pentru un rollback "Partial".&lt;/P&gt;</description></item><item><title>begin tran sql server 2000</title><link>http://sqlserver.ro/forums/thread/4289.aspx</link><pubDate>Wed, 05 Mar 2008 15:43:02 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:4289</guid><dc:creator>Alex</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/4289.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=4289</wfw:commentRss><description>&lt;P&gt;salut,&lt;/P&gt;
&lt;P&gt;am si eu o intrebare cu tranzactiile astea&lt;/P&gt;
&lt;P&gt;am o &lt;STRONG&gt;procedura1&lt;/STRONG&gt; in care am &lt;STRONG&gt;begin tran&lt;/STRONG&gt; si la sfarsit &lt;STRONG&gt;commit&lt;/STRONG&gt; sau &lt;STRONG&gt;rollback&lt;/STRONG&gt; functie de erori...am eroare face rollback nu am eroare face commit&lt;/P&gt;
&lt;P&gt;si in interiorul careia se apeleaza o alta &lt;STRONG&gt;procedura2&lt;/STRONG&gt; care la randul ei are un &lt;STRONG&gt;begin tran&lt;/STRONG&gt; si &lt;STRONG&gt;rollback&lt;/STRONG&gt; sau &lt;STRONG&gt;commit&lt;/STRONG&gt; (la fel functie de erori)&lt;/P&gt;
&lt;P&gt;in&amp;nbsp;procedura2 nu pot umbla deloc pt a o modifica....deci modificarile pe care le pot face sunt doar in procedura1&lt;/P&gt;
&lt;P&gt;daca apare o eroare in procedura2 adica trece pe rollback spune ca nu poate face rollback pt ca nu are un begin tran...cum pot evita asta&lt;/P&gt;
&lt;P&gt;exemplu:&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;&lt;STRONG&gt;begin&amp;nbsp; tran &lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;select 1&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;begin tran&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;select 2&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rollback tran&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;commit tran&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;asta e eroarea primita&lt;BR&gt;The COMMIT TRANSACTION request has no corresponding BEGIN TRANSACTION.&lt;/P&gt;
&lt;P&gt;multumesc&lt;/P&gt;
&lt;P&gt;alex.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description></item></channel></rss>