Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

MySQL´¥·¢Æ÷½â¾ö·½°¸Àú³Ì

×î½ü£¬ÏîÄ¿ÖÐÓõ½mysql£¬ÓÉÓÚÊý¾ÝÁ¿·Ç³£´ó£¬Ã¿ÌìµÄÊý¾ÝÁ¿ÔÚ°ÙÍò¼¶£¬¿¼Âǵ½mysqlÊý¾Ý¿â´¦ÀíÐÔÄÜÒÔ¼°Êý¾ÝÊôÐÔ£¬¾ö¶¨±£´æ×ã¹»¶àµÄ²éѯÊý¾Ý¼´¿É£¬¾àµ±Ç°Ê±¼ä×î¾ÃÔ¶µÄÊý¾ÝÖ±½Óɾ³ý£¬ÎÞÐè½øÐб¸·Ý¡£
Í·ÄÔÖÐð³öµÄµÚÒ»¸öÏë·¨¾ÍÊÇ£¬ÄÜ·ñÀûÓÃmysqlÖеĴ¥·¢Æ÷£¬¼ì²éÊý¾Ý±í´óС£¬Èç¹û³¬¹ýÔ¤É賤¶È£¬Ôòɾ³ý²¿·ÖÊý¾Ý¡£
CREATE TRIGGER tg AFTER INSERT ON traffic_info
FOR EACH ROW BEGIN
...
DELETE from traffic_info WHERE time <= "..."
...
END;
Ö´Ðкó³öÏÖÈçÏ´íÎó£º
ERROR 1442 (HY000): Can't update table 'traffic_info' in stored function/trigger because it is already used by statement which invoked this stored function/trigger.
Ô­À´£¬Ä¿Ç°MySQL´¥·¢Æ÷»¹²»Ö§³Öɾ³ý´¥·¢Æ÷ËùÔڵıíµÄÊý¾Ý£¬ok£¬ÎÒԭʼµÄÏë·¨ÊÇÿ¸öÊý¾Ý±í×Ô¼º¹ÜÀí±í´óС£¬ÏÖÔÚ¿´À´ÊÇÐв»Í¨ÁË¡£
µÚ¶þ¸öÏë·¨ÊǸɴàÓô洢¹ý³ÌµÃÁË£¬ÊÖ¶¯µ÷Óô洢¹ý³ÌÀ´¸üÐÂËùÓбíµÄ´óС£¬¿¼Âǵ½Êý¾Ý±íºÜ¶à£¬ÏëЭÒé¸ö½ÓÊÜÊý¾Ý±íÃûΪ²ÎÊýµÄ´æ´¢¹ý³Ì£º
CREATE PROCEDURE P(IN table_name VARCHAR(50)£¬ IN max_count INT)
READS SQL DATA
BEGIN
...
SELECT COUNT(1) from table_name
...
END;
ÕâÖÖ×ö·¨Ðв»Í¨£¬mysql»á½«“table_name”×Ö·û´®×÷Ϊ±íÃû£¬ËÑË÷ºó·¢ÏÖ£¬ÐèÒªÓõ½mysqlÐÂÌØÐÔprepare£¬²»¹ýÐèҪעÒâµÄÊÇ£¬¾ÍËãÊÇÀûÓÃprepare£¬»¹ÊÇÎÞ·¨Ö±½Ó´«ÈëÊý¾Ý±íÃû£¬ÐèÒªÀûÓÃCONCATÊÂÏÈÁ¬½Ó²éѯ×Ö·û´®£º
CREATE PROCEDURE P(IN table_name VARCHAR(50), IN max_count INT)
READS SQL DATA
BEGIN
...
SET @query_str = CONCAT("SELECT COUNT(1) from ", table_name);
PREPARE stmt from @query_str
EXECUTE stmt;
...
END;
×ÜËãÊÇËÍÁËÒ»¿ÚÆø£¬¿ÉÊÇÓÖ·¢ÏÖ£¬ÎÒÐèÒªÔÚ´æ´¢¹ý³ÌÖж¯Ì¬»ñÈ¡PREPARE²éѯµÄ·µ»Ø½á¹û£¬µ«ÊÇ£¬Ä¿Ç°mysql»¹ÎÞ·¨×öµ½ÕâÒ»µã£¬ÕæÊÇÈÃÈËʧÍû£¬¿´À´Ö»ÄÜÁíÃÙËü;ÁË……
ʱ¼ä²Ö´Ù£¬½ñÊÇΪ¼Ç


Ïà¹ØÎĵµ£º

windowsÏÂPHP5+APACHE+MYSQLÍêÕûÅäÖÃ

Èí¼þ°æ±¾:
php-5.2.13-Win32
apache_2.2.9-win32-x86-no_ssl-r2.msi(×¢Ò⣺APACHE 2.2.X°æ±¾ÒÔÉÏÒªÔö¼Ó²å¼þ²ÅÖ§³ÖPHP 5µÄ)
mysql-5.1.44-win32.msi
ÏÈ×°µÄphp5,Ö±½Ó½âѹÎļþµ½C:\php(°²×°µ½ÄÄÀï²¢²»»áÓÐÓ°Ï죬ƾ¸öÈËϲºÅ£¬±¾ÎÄÖеÄËùÓз¾¶¶¼ÒÔÎҵݲװ·¾¶£¬Çë´ó¼ÒÔÚ×Ô¼ºµÄ»úÆ÷Éϰ²×°µÄʱºò×¢ÒâÐÞ¸ÄΪ×Ô¼ºµÄ·¾¶)
½Ó× ......

¾­µäMYSQLÓï¾ä

SQL·ÖÀࣺ
DDL—Êý¾Ý¶¨ÒåÓïÑÔ(Create£¬Alter£¬Drop£¬DECLARE)
DML—Êý¾Ý²Ù×ÝÓïÑÔ(Select£¬Delete£¬Update£¬Insert)
DCL—Êý¾Ý¿ØÖÆÓïÑÔ(GRANT£¬REVOKE£¬COMMIT£¬ROLLBACK)
Ê×ÏÈ,¼òÒª½éÉÜ»ù´¡Óï¾ä£º
1¡¢ËµÃ÷£º´´½¨Êý¾Ý¿â
Create DATABASE database-name
2¡¢ËµÃ÷£ºÉ¾³ýÊý¾Ý¿â
drop database dbname
3¡ ......

mysqlÖеÄSQL·ÖÎö¹¤¾ß

Another Look at MySQL 5.1's SQL Diagnostic Tools
http://dev.mysql.com/tech-resources/articles/mysql_51_diagnostic_tools.html Êý¾Ý¿âµÄÐÔÄܾö¶¨ÒòËØ£º
£¨1£©Êý¾Ý¿âµÄÉè¼Æ
£¨2£©SQL´úÂë ¿ÉÒÔÓÃÒÔϼ¸ÖÖ·½·¨À´½â¾öһЩÐÔÄÜÎÊÌ⣺
£¨1£©Ë÷Òý
£¨2£©Ë®Æ½·ÖÇø
£¨3£©ÁÐÊÊÓ¦µÄ±í
colum ......

ÈçºÎ±£»¤MySQLÖеÄÖØÒªÊý¾Ý

ÔÚÈÕ³£µÄ¹¤×÷ÖУ¬±£»¤Êý¾ÝÃâÊÜδÊÚȨÓû§µÄÇÖ·¸ÊÇϵͳ¹ÜÀíÔ±ÌØ±ð¹ØÐĵÄÎÊÌâ¡£Èç¹ûÄãĿǰÓõÄÊÇMySQL£¬¾Í¿ÉÒÔʹÓÃһЩ·½±ãµÄ¹¦ÄÜÀ´±£»¤ÏµÍ³£¬À´´ó´ó¼õÉÙ»úÃÜÊý¾Ý±»Î´ÊÚȨÓû§·ÃÎʵķçÏÕ¡£
ÆóÒµ×îÓмÛÖµµÄ×ʲúͨ³£ÊÇÆäÊý¾Ý¿âÖеĿͻ§»ò²úÆ·ÐÅÏ¢¡£Òò´Ë£¬ÔÚÕâЩÆóÒµÖУ¬Êý¾Ý¿â¹ÜÀíµÄÒ»¸öÖØÒª²¿·Ö¾ÍÊDZ£»¤ÕâЩÊý¾ÝÃâÊÜÍⲿ¹¥»÷£ ......

mysql µ¥ÒýºÅ Ë«ÒýºÅ

½ñÌìÔÚдһÌõsqlÓï¾äµÄʱºò£¬ÓõÄË«ÒýºÅ£¬sqlÓï¾äÖ´ÐдíÎ󡣼ǵÄͬÊÂÎÊÎÒmysqlÓï¾äÖеĵ¥ÒýºÅºÍË«ÒýºÅÓÐÇø±ðÂ𣿻شðÊÇûÓÐÇø±ð¡£
½ñÌìÌØµØ²éÁ˲飬»¹ÊÇÓеãÇø±ðµÄ¡£
mysqlÖеÄÒ»¶Î˵Ã÷£º
ÔÚmysqlÖУ¬Ê¹Óõ¥ÒýºÅºÍË«ÒýºÅÁ©ÖÖ±í´ï·½·¨ÊÇÒ»ÑùµÄ£¬¾¡¹ÜʹÓõ¥ÒýºÅµÄ±í´ï·½·¨·ûºÏANSI-SQL/92±ê×¼¡£
Èç¹ûÔÚ×Ö·û´®ÀïÓÐÒýºÅ£¬Ôò ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ