Mysql ´¥·¢Æ÷ʵÀý
MySQL ´¥·¢Æ÷¼òµ¥ÊµÀý
1¡¢Óï·¨£º
CREATE TRIGGER <´¥·¢Æ÷Ãû³Æ> --´¥·¢Æ÷±ØÐëÓÐÃû×Ö£¬×î¶à64¸ö×Ö·û£¬¿ÉÄܺóÃæ»á¸½Óзָô·û.ËüºÍMySQLÖÐÆäËû¶ÔÏóµÄÃüÃû·½Ê½»ù±¾ÏàÏó.
{ BEFORE | AFTER } --´¥·¢Æ÷ÓÐÖ´ÐеÄʱ¼äÉèÖ㺿ÉÒÔÉèÖÃΪʼþ·¢Éúǰ»òºó¡£
{ INSERT | UPDATE | DELETE } --ͬÑùÒ²ÄÜÉ趨´¥·¢µÄʼþ£ºËüÃÇ¿ÉÒÔÔÚÖ´ÐÐinsert¡¢update»òdeleteµÄ¹ý³ÌÖд¥·¢¡£
ON <±íÃû³Æ> --´¥·¢Æ÷ÊÇÊôÓÚijһ¸ö±íµÄ:µ±ÔÚÕâ¸ö±íÉÏÖ´ÐвåÈë¡¢ ¸üлòɾ³ý²Ù×÷µÄʱºò¾Íµ¼Ö´¥·¢Æ÷µÄ¼¤»î. ÎÒÃDz»ÄܸøÍ¬Ò»ÕűíµÄͬһ¸öʼþ°²ÅÅÁ½¸ö´¥·¢Æ÷¡£
FOR EACH ROW --´¥·¢Æ÷µÄÖ´Ðмä¸ô£ºFOR EACH ROW×Ó¾ä֪ͨ´¥·¢Æ÷ ÿ¸ôÒ»ÐÐÖ´ÐÐÒ»´Î¶¯×÷£¬¶ø²»ÊǶÔÕû¸ö±íÖ´ÐÐÒ»´Î¡£
<´¥·¢Æ÷SQLÓï¾ä> --´¥·¢Æ÷°üº¬ËùÒª´¥·¢µÄSQLÓï¾ä£ºÕâÀïµÄÓï¾ä¿ÉÒÔÊÇÈκκϷ¨µÄÓï¾ä£¬ °üÀ¨¸´ºÏÓï¾ä£¬µ«ÊÇÕâÀïµÄÓï¾äÊܵÄÏÞÖÆºÍº¯ÊýµÄÒ»Ñù¡£
--Äã±ØÐëÓµÓÐÏ൱´óµÄȨÏÞ²ÅÄÜ´´½¨´¥·¢Æ÷£¨CREATE TRIGGER£©£¬Èç¹ûÄãÒѾÊÇRootÓû§£¬ÄÇô¾Í×ã¹»ÁË¡£Õâ¸úSQLµÄ±ê×¼ÓÐËù²»Í¬¡£
2¡¢¼òµ¥ÊµÀý:
example1:
--´´½¨±ítab1
DROP TABLE IF EXISTS tab1;
CREATE TABLE tab1(
tab1_id varchar(11)
);
--´´½¨±ítab2
DROP TABLE IF EXISTS tab2;
CREATE TABLE tab2(
tab2_id varchar(11)
);
--´´½¨´¥·¢Æ÷:t_afterinsert_on_tab1
--×÷ÓãºÔö¼Ótab1±í¼Ç¼ºó×Ô¶¯½«¼Ç¼Ôö¼Óµ½tab2±íÖÐ
DROP TRIGGER IF EXISTS t_afterinsert_on_tab1;
CREATE TRIGGER t_afterinsert_on_tab1
AFTER INSERT ON tab1
FOR EACH ROW
BEGIN
insert into tab2(tab2_id) values(new.tab1_id);
END;
--²âÊÔÒ»ÏÂ
INSERT INTO tab1(tab1_id) values('0001');
--¿´¿´½á¹û
SELECT * from tab1;
SELECT * from tab2;
example2:
--´´½¨´¥·¢Æ÷:t_afterdelete_on_tab1
--×÷ÓãºÉ¾³ýtab1±í¼Ç¼ºó×Ô¶¯½«tab2±íÖжÔÓ¦µÄ¼Ç¼ɾȥ
DROP TRIGGER IF EXISTS t_afterdelete_on_tab1;
CREATE TRIGGER t_afterdelete_on_tab1
AFTER DELETE ON tab1
FOR EACH ROW
BEGIN
delete from tab2 where tab2_id=old.tab1_id;
END;
--²âÊÔÒ»ÏÂ
DELETE from tab1 WHERE tab1_id='0001';
--¿´¿´½á¹û
SELECT * from tab1;
SELECT * from tab2;
Ïà¹ØÎĵµ£º
Ê×ÏÈ£¬½¨InnoDBÀàÐÍµÄ±í£¬²ÅÄÜÖ§³ÖÊÂÎñ
$handler = mysql_connect('localhost', '', '');
mysql_select_db('test');
mysql_query('SET AUTOCOMMIT=0'); // ÉèÖÃΪ²»×Ô¶¯Ìá½»²éѯ
mysql_query('START TRANSACTION'); // ¿ªÊ¼²éѯ£¬ÕâÀïÒ²¿ÉÒÔʹÓÃBEGIN
mysql_query("INSERT INTO users VALUES ('ccc')");
mysql_query( ......
1£®Ë÷Òý×÷ÓÃ
ÔÚË÷ÒýÁÐÉÏ£¬³ýÁËÉÏÃæÌáµ½µÄÓÐÐò²éÕÒÖ®Í⣬Êý¾Ý¿âÀûÓø÷ÖÖ¸÷ÑùµÄ¿ìËÙ¶¨Î»¼¼Êõ£¬Äܹ»´ó´óÌá¸ß²éѯЧÂÊ¡£ÌرðÊǵ±Êý¾ÝÁ¿·Ç³£´ó£¬²éÑ¯Éæ¼°¶à¸ö±íʱ£¬Ê¹ÓÃË÷ÒýÍùÍùÄÜʹ²éѯËٶȼӿì³ÉǧÉÏÍò±¶¡£
ÀýÈ磬ÓÐ3¸öδË÷ÒýµÄ±ít1¡¢t2¡¢t3£¬·Ö±ðÖ»°üº¬ÁÐc1¡¢c2¡¢c3£¬Ã¿¸ö±í·Ö±ðº¬ÓÐ1000ÐÐÊý¾Ý×é³É£¬Ö¸Îª1¡«1000µÄÊýÖµ£¬² ......
iMarine http://iMarine.blog.163.com
×¢Ã÷£º±¾Îĵµ²Î¿¼Jena 2.5Îĵµ£¬Ê¹ÓÃJena 2.5 APIºÍMySQL 5.0.4-beta-ntÊý¾Ý¿â¡£MySQLÇý¶¯°üʹÓõÄÊÇmysql-connector-java-3.1.10-bin.jar¡£
1 JenaµÄÊý¾Ý¿â½Ó¿Ú
JenaÌṩÁ˽«RDFÊý¾Ý´æÈë¹ØÏµÊý¾Ý¿âµÄ½Ó¿Ú£¬Model¡¢Resource¡¢QueryµÈ½Ó¿Ú¿ÉÒÔÓÃÓÚ·ÃÎʺÍά»¤Êý¾Ý¿âÀïµÄRDFÊý ......
×î½ü×öÒ»¸öСÏîÄ¿£¬¸ÕºÃÓöµ½Õâ¸öÎÊÌ⣬ûʲôʱ¼äÈ¥½â¾öÕâ¸öÎÊÌ⣬´ó¸ÅÔÚÍøÉÏÕÒÁËһϣ¬Ëµ¸ÄʵÀýÃû£¬¸Ä×¢²á±í£¬ÏȲ»ÊǺܸҸģ¬±Ï¾¹¶Ô×¢²á±íÒ»Ö±¾õµÃÊǸö´óÉñ£¬²»¸ÒËæ±ã¶¯£¬½ñ¶ùÊÇ»í³öÈ¥ÁË£¬¾ÍÔÚ×¢²á±íÖвéÕÒËùÓдúmysql×ÖÑùµÄÐÅϢȫ²¿É¾³ý£¬×îºó¾¹È»³ÉÁË£¬µ±È»Ð¶Ôغóɾ³ý֮ǰËùÓеÄÏà¹ØÐÅÏ¢£¬°²×°ÎļþÄ¿ ......
½üÈÕ£¬MySQL 5.5 µÚÒ»¸ö°æ±¾·¢²¼ÁË£¬»ùÓÚMySQl 5.4£¬µ«ÊÇÔÚÐÔÄÜÉÏÏà¶ÔÓÚµ±Ç°µÄ5.0/5.1ÓÐÁ˺ܴóµÄÌáÉý¡£
ÐÂÌØÐÔ£º
Ö§³Ösemisynchronous £¨°ëͬ²½£©¸´Öƽӿڣ¬¿É´î½¨³öÒ»¸öÏà¶ÔÍêÃÀµÄMySQL¸ß¿ÉÓÃÐÔ·½°¸
¼¯³ÉInnodb plugin 1.0.6
Ö§³Ö SQL ±ê×¼ SIGNAL ºÍ RESIGNAL Óï¾ä
ÔöÇ¿XML¹¦ÄÜ£¬Ö§³Ö LOAD XML Óï¾ä
¿Éͨ¹ý A ......