mysql UDF+triggerµÄÉñÆæÄ§Á¦
1.ʲôÊÇUDF? UDF(user-defined function)ÊÇmysqlΪÓû§ÌṩµÄ×Ô¶¨Ò庯ÊýµÄÀ©Õ¹½Ó¿Ú¡£Ëü±¾ÖÊÉϺÍmysqlÌṩµÄmax¡¢minºÍcountµÈº¯ÊýÀàËÆ¡£ 2.UDF¿ÉÒÔ×öʲô? UDFÊÇ×Ô¶¨Ò庯Êý£¬ËùÒÔËüÄÜ×öʲôÍêȫȡ¾öÓÚÄãµÄʵÏÖ¡£UDF¿ÉÒÔÔÚÆÕͨµÄsql¡¢triggerÒÔ¼°store procedure±»µ÷ÓᣠÈç¹û×Ô¶¨ÒåÒ»¸ötcp_send(ip,port,msg)µÄº¯Êý£¬ÄÇô¾Í¿ÉÒÔͨ¹ýµ÷ÓÃ"SELECT tcp_send(¡®127.0.0.1¡¯, ¡®9090¡¯, ¡®a msg¡¯)¡±ÊµÏÖºÍ127.0.0.1:9090µÄͨÐÅ¡£ UDFÔÚtriggerÖÐʹÓ㺠´´½¨±í£º CREATE TABLE test.tab1 (a int); ´´½¨´¥·¢Æ÷£º DELIMITER // use test; // CREATE TRIGGER tab1_insert AFTER UPDATE ON test.tab1 FOR EACH ROW BEGIN SET @result = (SELECT http_post('127.0.0.1', '9090', OLD.a)); END; // DELIMITER ; 3. UDF+triggerµÄʵ¼ÊÓ¦Óà ӦÓÃ1£ºÊµÏÖÊý¾Ý¿âÖ÷¶¯½øÐÐcache¸üРӦÓÃ2£ºÊµÏÖ²»Í¬ÏµÍ³¼äµÄÊý¾Ý´«µÝ 4. UDF DEMO ½üÆÚÍÆ³ö¡
Ïà¹ØÎĵµ£º
<?php
/*
*PHP¹ÜÀíMYSQLµÄÊý¾Ý¿âÀà
ʹÓ÷½·¨£º$dbConn = new DbConn([$Êý¾Ý¿âÃû(¿ÉÑ¡)]);
ÔÊÐí·µ»ØµÄ·½·¨£º
Execute($sql) //Ö´ÐÐSQLÓï¾ä£¬Ã»Óзµ»ØÖµ;
getRs($sql) //·µ»Ø²éѯÓï¾äµÄ¼Ç¼£¬Ò»Ìõ;
getRsArray($sql) //·µ» ......
ÎÒµÄϵͳÊÇubuntu6.06£¬×î½üÐÂ×°ºÃµÄmysqlÔÚ½øÈëmysql¹¤¾ßʱ£¬×ÜÊÇÓдíÎóÌáʾ:
# mysql -uroot -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
ʹÓÃÍøÉϽéÉܵķ½·¨ÐÞ¸ÄrootÓû§µÄÃÜÂ룺
# mysqladmin -uroot -p password 'newpassword'
Enter password:
m ......
MYSQL ÐÞ¸ÄrootÃÜÂëÃüÁî
cmdÏÂÇл»µ½ mysql °²×°Ä¿Â¼
Àý
d:/mysql/bin
ǰÌ᣺mysqlÓû§rootÃÜÂëΪ¿Õ.
ÊäÈë mysql -u root mysql
mysql> ״̬ÏÂÊäÈë update user set password=password('ÐÂÃÜÂë') where user='root';
»ØÏÔ
Query OK, 0 rows affected (0.00 sec)
Rows matched: 2 Changed: 0 Warnings: 0
......
ÔÚ³ÌÐò¿ª·¢ÖУ¬ÓÐʱ»á±»×Ö·ûÂÒÂëµÄÎÊÌâËùÀ§ÈÅ¡£¶Ô´Ë£¬±ØÐëÀí½â MySQL µÄ×Ö·û¼¯±àÂëÉèÖõÄÔÀí£ºÔÚMySQLÖУ¬Ä¬ÈÏʹÓõÄÊÇlartin1£¬Ò²¾ÍÊÇISO8859-1×Ö·û¼¯±àÂë¡£ÕâÊÇÒ»ÖÖ8λµÄ±àÂ룬ÊÊÓÃÓÚËùÓÐÎ÷Å·×Ö·û¡£¶ø¶ÔÓÚºº×ÖµÈÊDz»ºÏÊʵġ£×îºÃ¡¢×îͨÓõıàÂë¸ñʽÊÇutf-8£¬UTF-8£¨8 λԪ Universal Cha ......
¶Ômysql´æ´¢¹ý³ÌµÄ¼òµ¥Ó¦ÓÃ
Ïò±íÖвåÈëÄ£ÄâÊý¾Ý£¬¼ì²é·ÖҳЧ¹ûÊÇ·ñ³ö´í¡£
create procedure dowhile()
begin
declare cnt INT default 0;
while cnt<100 do
INSERT INTO `test`.`news` (`F_ID` ,`F_TITLE` ,`F_CLASSID` ,`F_ISUP` ,`F_CONTENT` ,`F_SOURCE` ,`F_DATETIME` ,`F_RE ......