<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comentarios en: COMMIT de transacciones en MySQL</title>
	<atom:link href="http://luauf.com/2008/10/13/commit-de-transacciones-en-mysql/feed/" rel="self" type="application/rss+xml" />
	<link>http://luauf.com/2008/10/13/commit-de-transacciones-en-mysql/</link>
	<description></description>
	<lastBuildDate>Mon, 06 Feb 2012 13:09:21 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>Por: Jhoneu</title>
		<link>http://luauf.com/2008/10/13/commit-de-transacciones-en-mysql/comment-page-1/#comment-16956</link>
		<dc:creator>Jhoneu</dc:creator>
		<pubDate>Fri, 27 Jan 2012 01:57:14 +0000</pubDate>
		<guid isPermaLink="false">http://luauf.com/?p=692#comment-16956</guid>
		<description>Exacto lo que queremos es como se reconoce para la ejecucion del rollback,o el commit.
Ya sabemos q es lo que pasa cuando se usa.
en q circunstancias se ejecuta porque no vemos la falla del procedimineto pero debe estar el rolback y cuando correcto de forma automatica ejecutarse el comint.</description>
		<content:encoded><![CDATA[<p>Exacto lo que queremos es como se reconoce para la ejecucion del rollback,o el commit.<br />
Ya sabemos q es lo que pasa cuando se usa.<br />
en q circunstancias se ejecuta porque no vemos la falla del procedimineto pero debe estar el rolback y cuando correcto de forma automatica ejecutarse el comint.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: kingc</title>
		<link>http://luauf.com/2008/10/13/commit-de-transacciones-en-mysql/comment-page-1/#comment-15351</link>
		<dc:creator>kingc</dc:creator>
		<pubDate>Sat, 12 Nov 2011 15:32:29 +0000</pubDate>
		<guid isPermaLink="false">http://luauf.com/?p=692#comment-15351</guid>
		<description>hola que tal ...me parece interesante pero en muy basico... seria bueno que publiques sobre transacccion con manejos de errores y el uso del rollback en estos casos...
saludos cordiales...</description>
		<content:encoded><![CDATA[<p>hola que tal &#8230;me parece interesante pero en muy basico&#8230; seria bueno que publiques sobre transacccion con manejos de errores y el uso del rollback en estos casos&#8230;<br />
saludos cordiales&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Bonita</title>
		<link>http://luauf.com/2008/10/13/commit-de-transacciones-en-mysql/comment-page-1/#comment-13232</link>
		<dc:creator>Bonita</dc:creator>
		<pubDate>Wed, 13 Jul 2011 22:25:37 +0000</pubDate>
		<guid isPermaLink="false">http://luauf.com/?p=692#comment-13232</guid>
		<description>Hola! Realice el sig Procedimiento,ingreso datos  donde falla la segunda sentencia de insert, lo que quiero saber es como hacer para que se regresen los datos como estaban de la primera sentencia si la segunda falla...

PROCEDURE `Registra`(IN `NOMBRE` varchar(150),IN `DOM` varchar(150),IN `EST` int (2),IN `MUN` int(2),IN `INST` int(2),
IN `FECHA` varchar(100),IN `TEL` varchar(30),IN FAX varchar(25),IN `CORREO`  varchar(30),IN `ESTATUS` int(2), IN `OBSERVA` varchar(250))
BEGIN
SET AUTOCOMMIT = 0;
START TRANSACTION WITH CONSISTENT SNAPSHOT;
SELECT  @S:= MAX(USUARIO)  FROM USUARIOS  ;
SELECT @SO:= SUBSTRING(@S,CHARACTER_LENGTH(@S)-2,CHARACTER_LENGTH(@S)) + 1 ;
SELECT @NVOCBE:= IF(CHARACTER_LENGTH(@SO)+2 =4,CONCAT (&#039;TV&#039;,&#039;0&#039;,@SO),CONCAT(&#039;TV&#039;,@SO)) ;
SELECT @NVOPASS:= IF(CHARACTER_LENGTH(@SO)+2 =4,CONCAT (&#039;tele&#039;,&#039;0&#039;,@SO),CONCAT(&#039;tele&#039;,@SO))   ;
INSERT INTO USUARIOS VALUES (0,NOMBRE,@NVOCBE,@NVOPASS,ESTATUS,3);
sELECT @IDUSER:=IDUSUARIO  FROM USUARIOS WHERE USUARIO = @NVOCBE;
INSERT INTO TELEAULAS VALUES(@IDUSER,DOM,EST,MUN ,INST,FECHA,TEL,FAX,CORREO,OBSERVA);
COMMIT;
END;</description>
		<content:encoded><![CDATA[<p>Hola! Realice el sig Procedimiento,ingreso datos  donde falla la segunda sentencia de insert, lo que quiero saber es como hacer para que se regresen los datos como estaban de la primera sentencia si la segunda falla&#8230;</p>
<p>PROCEDURE `Registra`(IN `NOMBRE` varchar(150),IN `DOM` varchar(150),IN `EST` int (2),IN `MUN` int(2),IN `INST` int(2),<br />
IN `FECHA` varchar(100),IN `TEL` varchar(30),IN FAX varchar(25),IN `CORREO`  varchar(30),IN `ESTATUS` int(2), IN `OBSERVA` varchar(250))<br />
BEGIN<br />
SET AUTOCOMMIT = 0;<br />
START TRANSACTION WITH CONSISTENT SNAPSHOT;<br />
SELECT  @S:= MAX(USUARIO)  FROM USUARIOS  ;<br />
SELECT @SO:= SUBSTRING(@S,CHARACTER_LENGTH(@S)-2,CHARACTER_LENGTH(@S)) + 1 ;<br />
SELECT @NVOCBE:= IF(CHARACTER_LENGTH(@SO)+2 =4,CONCAT (&#8216;TV&#8217;,&#8217;0&#8242;,@SO),CONCAT(&#8216;TV&#8217;,@SO)) ;<br />
SELECT @NVOPASS:= IF(CHARACTER_LENGTH(@SO)+2 =4,CONCAT (&#8216;tele&#8217;,&#8217;0&#8242;,@SO),CONCAT(&#8216;tele&#8217;,@SO))   ;<br />
INSERT INTO USUARIOS VALUES (0,NOMBRE,@NVOCBE,@NVOPASS,ESTATUS,3);<br />
sELECT @IDUSER:=IDUSUARIO  FROM USUARIOS WHERE USUARIO = @NVOCBE;<br />
INSERT INTO TELEAULAS VALUES(@IDUSER,DOM,EST,MUN ,INST,FECHA,TEL,FAX,CORREO,OBSERVA);<br />
COMMIT;<br />
END;</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Jeremias</title>
		<link>http://luauf.com/2008/10/13/commit-de-transacciones-en-mysql/comment-page-1/#comment-12721</link>
		<dc:creator>Jeremias</dc:creator>
		<pubDate>Tue, 07 Jun 2011 13:51:57 +0000</pubDate>
		<guid isPermaLink="false">http://luauf.com/?p=692#comment-12721</guid>
		<description>Hola a todos. en respuesta a las últimas preguntas: que ocurra un error en el query ejecutado dentro de la transaccion, no implica que la base de datos quedó inactiva o que ya no podrás ejecutar ningún query, sino que, sólo ese query resultó fallido por un motivo que se desconoce desde afuera del motor de BD. Por lo cual:
1) inciar transaccion.
2) ejecutar querys que modifican la base. (insert, delete y update)
3) controlar el resultado de los querys:
     3) = OK =&gt; ejecutar commit
     3) = FAIL =&gt; ejecutar rollback

espero que les sirva.
un saludo a todos.</description>
		<content:encoded><![CDATA[<p>Hola a todos. en respuesta a las últimas preguntas: que ocurra un error en el query ejecutado dentro de la transaccion, no implica que la base de datos quedó inactiva o que ya no podrás ejecutar ningún query, sino que, sólo ese query resultó fallido por un motivo que se desconoce desde afuera del motor de BD. Por lo cual:<br />
1) inciar transaccion.<br />
2) ejecutar querys que modifican la base. (insert, delete y update)<br />
3) controlar el resultado de los querys:<br />
     3) = OK =&gt; ejecutar commit<br />
     3) = FAIL =&gt; ejecutar rollback</p>
<p>espero que les sirva.<br />
un saludo a todos.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Sergio</title>
		<link>http://luauf.com/2008/10/13/commit-de-transacciones-en-mysql/comment-page-1/#comment-11887</link>
		<dc:creator>Sergio</dc:creator>
		<pubDate>Wed, 13 Apr 2011 12:55:53 +0000</pubDate>
		<guid isPermaLink="false">http://luauf.com/?p=692#comment-11887</guid>
		<description>Al igual que wa, tengo la duda de cómo hacer el rollback en caso de error. Muchas gracias.</description>
		<content:encoded><![CDATA[<p>Al igual que wa, tengo la duda de cómo hacer el rollback en caso de error. Muchas gracias.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: wa</title>
		<link>http://luauf.com/2008/10/13/commit-de-transacciones-en-mysql/comment-page-1/#comment-11726</link>
		<dc:creator>wa</dc:creator>
		<pubDate>Mon, 04 Apr 2011 20:57:04 +0000</pubDate>
		<guid isPermaLink="false">http://luauf.com/?p=692#comment-11726</guid>
		<description>opino lo mismo que anRoswell, si se ocurriese algun error, como hago el rollback??</description>
		<content:encoded><![CDATA[<p>opino lo mismo que anRoswell, si se ocurriese algun error, como hago el rollback??</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: anRoswell</title>
		<link>http://luauf.com/2008/10/13/commit-de-transacciones-en-mysql/comment-page-1/#comment-9974</link>
		<dc:creator>anRoswell</dc:creator>
		<pubDate>Sat, 04 Dec 2010 16:44:32 +0000</pubDate>
		<guid isPermaLink="false">http://luauf.com/?p=692#comment-9974</guid>
		<description>Aportando un poco mas a la pregunta de noe a pesar de q lleva mas de 1 años, el rollback se colocaria en alguna instruccion en caso de q se produsca algun error, por ejemplo puedes hacer varios insert y en alguno de los query sea errado se produsca un error, entonces seria convenienete ejecutar un rollback para cancelar todos los insert, 

Bueno se q no soy bueno explicando pero espero me entiendan ;-)</description>
		<content:encoded><![CDATA[<p>Aportando un poco mas a la pregunta de noe a pesar de q lleva mas de 1 años, el rollback se colocaria en alguna instruccion en caso de q se produsca algun error, por ejemplo puedes hacer varios insert y en alguno de los query sea errado se produsca un error, entonces seria convenienete ejecutar un rollback para cancelar todos los insert, </p>
<p>Bueno se q no soy bueno explicando pero espero me entiendan <img src='http://luauf.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Guillermo</title>
		<link>http://luauf.com/2008/10/13/commit-de-transacciones-en-mysql/comment-page-1/#comment-5954</link>
		<dc:creator>Guillermo</dc:creator>
		<pubDate>Sat, 12 Dec 2009 20:12:41 +0000</pubDate>
		<guid isPermaLink="false">http://luauf.com/?p=692#comment-5954</guid>
		<description>repondiendo a noe Romeo:

usando el ejemplo del amigo de arriba.

START TRANSACTION;
SELECT @A:=PRESUPUESTO FROM departamentos_externos WHERE codigo=11;
UPDATE departamentos SET PRESUPUESTO = PRESUPUESTO + @A WHERE codigo=33;
INSERT INTO departamentos_externos(RESUPUESTO) VALUES(&#039;valor&#039;) WHERE codigo=11;

COMMIT; // para aceptar la transaccion
ó
ROLLBACK;//si quieres cancelar la transaccion

Nota: una ves q has realizado una o varias consultas (SELECT,UPDATE; DELETE,INSERT...) tienes dos opciones, aceptar la transaccion, o cancelar la transaccion, para aceptar la transaccion y los datos sean ingresados, actualizados, borrados( depende la sentencia que ayas usado) a la base de datos, utilizas COMMIT.
Para cancelar la transaccion (osea cancelar todas las sentencias realizadas) utilizas ROLLBACK.

una ves utilizada la sentencia COMMIT ya no puedes usar ROLLBACK.

espero me haya dado a entender...</description>
		<content:encoded><![CDATA[<p>repondiendo a noe Romeo:</p>
<p>usando el ejemplo del amigo de arriba.</p>
<p>START TRANSACTION;<br />
SELECT @A:=PRESUPUESTO FROM departamentos_externos WHERE codigo=11;<br />
UPDATE departamentos SET PRESUPUESTO = PRESUPUESTO + @A WHERE codigo=33;<br />
INSERT INTO departamentos_externos(RESUPUESTO) VALUES(&#8216;valor&#8217;) WHERE codigo=11;</p>
<p>COMMIT; // para aceptar la transaccion<br />
ó<br />
ROLLBACK;//si quieres cancelar la transaccion</p>
<p>Nota: una ves q has realizado una o varias consultas (SELECT,UPDATE; DELETE,INSERT&#8230;) tienes dos opciones, aceptar la transaccion, o cancelar la transaccion, para aceptar la transaccion y los datos sean ingresados, actualizados, borrados( depende la sentencia que ayas usado) a la base de datos, utilizas COMMIT.<br />
Para cancelar la transaccion (osea cancelar todas las sentencias realizadas) utilizas ROLLBACK.</p>
<p>una ves utilizada la sentencia COMMIT ya no puedes usar ROLLBACK.</p>
<p>espero me haya dado a entender&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: JOSE MENDOZA</title>
		<link>http://luauf.com/2008/10/13/commit-de-transacciones-en-mysql/comment-page-1/#comment-5564</link>
		<dc:creator>JOSE MENDOZA</dc:creator>
		<pubDate>Wed, 21 Oct 2009 02:12:08 +0000</pubDate>
		<guid isPermaLink="false">http://luauf.com/?p=692#comment-5564</guid>
		<description>GRACIAS FUE MUY UTIL PARA ENTREGAR MI INVESTIGACION Y POR CIERTO FUE DIFICIL DE ENCOTRARLO!!!!!!!!!!!!!!!!!!!!!!!!!</description>
		<content:encoded><![CDATA[<p>GRACIAS FUE MUY UTIL PARA ENTREGAR MI INVESTIGACION Y POR CIERTO FUE DIFICIL DE ENCOTRARLO!!!!!!!!!!!!!!!!!!!!!!!!!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: noe Romero</title>
		<link>http://luauf.com/2008/10/13/commit-de-transacciones-en-mysql/comment-page-1/#comment-2870</link>
		<dc:creator>noe Romero</dc:creator>
		<pubDate>Wed, 27 May 2009 04:54:06 +0000</pubDate>
		<guid isPermaLink="false">http://luauf.com/?p=692#comment-2870</guid>
		<description>y el roolback en que momento se utiliza? :(</description>
		<content:encoded><![CDATA[<p>y el roolback en que momento se utiliza? <img src='http://luauf.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
</channel>
</rss>

