mysql ´æ´¢¹ý³Ì ÊÂÎñ
Ôõô²¶×½µ½´íÎó½øÐÐroolback
DELIMITER $$
DROP PROCEDURE IF EXISTS `test`.`transaction`$$
CREATE DEFINER=`root`@`localhost` PROCEDURE `transaction`()
BEGIN
set autocommit = 0;
/*start TRANSACTION;*/
insert into t3 (id) values(90000);
insert into t3 (id3) values(60000);
if ERRORS <> 0 then
/*rollback to SAVEPOINT savepoint_1;*/
rollback;
end if;
END$$
DELIMITER ;
µÚ¶þÌõÊÇ´íÎóµÄ£¬µ«µÚÒ»ÌõÈ´Ö´ÐÐÁË£¬
ÔõôÈõÚÒ»ÌõÒ²rollback°¡£¿
±íµÄ½á¹ûÊÇinnodbÀàÐ͵Ä
insert IGNORE into t3 (id3) values(60000);
if @@error_count <> 0 then
if @@ERRORS <> 0 then
µÚ¶þÌõÊÇ´íÎóµÄ£¬µ«µÚÒ»ÌõÈ´Ö´ÐÐÁË£¬
------------
Òª½øÐÐÒì³£´¦Àí£¬·ñÔò£¬ºóÃæµÄÓï¾ä¶¼Ö´Ðв»ÁË¡£
ʾÀý£º
SQL code:
DROP PROCEDURE IF EXISTS `p_test`;
CREATE DEFINER=`root`@`localhost` PROCEDURE `p_test`()
BEGIN
declare v_i int;
declare continue handler for 1062 set v_i=1;
set v_i=0;
start transaction;
insert into tb_test22 (id) values(90000);
insert into tb_test22 (id) values(90000);
if v_i <> 0 then
rollback;
else
commit;
end if;
END;
ÉÏÃæµÄʾÀý¼ÙÉè±ítb_test22µÄidÁÐΪÖ÷¼ü¡£
{{-
Ïà¹ØÎÊ´ð£º
ÎÒÒÔÇ°°²×°ÁËÒ»´Î£¬ºóÀ´Ð¶ÔØÁË£¬ÏÖÔÚÔÙ°²×°µÄʱºò£¬Ìáʾ´íÎó£ºError 1305.Error reading from file C:DOCUME~1\LOCALS~1\Temp\mysql_server.msi.Verify that the file exists and that you can access it.
¿ ......
MySQLÈëÃÅ
¿ÉÒÔÏÈ¿´Ê²Ã´Êé¼®°¡£¿
ÏȶÁÈý±é¡¶Êý¾Ý¿âϵͳ¸ÅÂÛ¡·,ÕÆÎÕÊý¾Ý¿âµÄ»ù´¡ÀíÂÛ¡£
È»ºóÔÙ´Ö¿´Ò»±éMYSQLµÄ¹Ù·½Îĵµ¡£ MySQL¹Ù·½Îĵµ http://dev.mysql.com/doc/refman/5.1/zh/index.html
¾ÍÕÒÒ»±¾ºÜ»ù´ ......
ÇëÎʸ÷λ´ó¸ç£¬¾²Ì¬±àÒëʱ£¬mysql±àÒëÑ¡Ïî--with-mysqld-ldflagsºóÃæÓÃ-all-staticºÍ-staticÓÐʲô²»Í¬Âð£¿
ÒýÓÃ
-all-static ¼ûµ½¹ý£¬ÊÇËùÓеÄÎļþΪ¾²Ì¬LINK£¬ÕâÑùmysqldµÄÔËÐÐЧÂÊ»á±È½Ï¸ß£¬Í¬Ñù³ß´ç»á ......
ÔÚ½øÐÐÊý¾Ý¿â¶ÁдµÄʱºò£¬Ò»°ãÇé¿ö϶¼Êǵ¥Ï̵߳ģ¬µ«ÊÇÈçºÎÔÚ²Ù×÷µÄʱºòҲʹÓöàÏß³ÌÄØ£¿Ê¹ÓöàḬ̈߳²È«Â𣿶àÏß³ÌÊÇÈçºÎ±£Ö¤°²È«µÄÄØ£¿Èç¹ûÓдúÂëµÄ»°£¬Ìù³öÀÛ»òÕß°Ñ´úÂë¹²Ïí¸øÎÒѧϰѧϰ¡£¡£¡£¶àл£¡
ÄãÊÇÖ¸ÍâÃæ ......