亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? trigger2.test

?? sqlite庫
?? TEST
?? 第 1 頁 / 共 2 頁
字號:
  CREATE TABLE log (a);  INSERT INTO log VALUES (0);}foreach trig $when_triggers {  execsql "CREATE TRIGGER $trig BEGIN UPDATE log set a = a + 1; END;"}ifcapable subquery {  set t232 {1 0 1}} else {  set t232 {0 0 1}}do_test trigger2-3.2 {  execsql {     INSERT INTO tbl VALUES(0, 0, 0, 0);     -- 1 (ifcapable subquery)    SELECT * FROM log;    UPDATE log SET a = 0;    INSERT INTO tbl VALUES(0, 0, 0, 0);     -- 0    SELECT * FROM log;    UPDATE log SET a = 0;    INSERT INTO tbl VALUES(200, 0, 0, 0);     -- 1    SELECT * FROM log;    UPDATE log SET a = 0;  }} $t232execsql {  DROP TABLE tbl;  DROP TABLE log;}integrity_check trigger2-3.3# Simple cascaded triggerexecsql {  CREATE TABLE tblA(a, b);  CREATE TABLE tblB(a, b);  CREATE TABLE tblC(a, b);  CREATE TRIGGER tr1 BEFORE INSERT ON tblA BEGIN    INSERT INTO tblB values(new.a, new.b);  END;  CREATE TRIGGER tr2 BEFORE INSERT ON tblB BEGIN    INSERT INTO tblC values(new.a, new.b);  END;}do_test trigger2-4.1 {  execsql {    INSERT INTO tblA values(1, 2);    SELECT * FROM tblA;    SELECT * FROM tblB;    SELECT * FROM tblC;  }} {1 2 1 2 1 2}execsql {  DROP TABLE tblA;  DROP TABLE tblB;  DROP TABLE tblC;}# Simple recursive triggerexecsql {  CREATE TABLE tbl(a, b, c);  CREATE TRIGGER tbl_trig BEFORE INSERT ON tbl     BEGIN      INSERT INTO tbl VALUES (new.a, new.b, new.c);    END;}do_test trigger2-4.2 {  execsql {    INSERT INTO tbl VALUES (1, 2, 3);    select * from tbl;  }} {1 2 3 1 2 3}execsql {  DROP TABLE tbl;}# 5.execsql {  CREATE TABLE tbl(a, b, c);  CREATE TRIGGER tbl_trig BEFORE INSERT ON tbl     BEGIN      INSERT INTO tbl VALUES (1, 2, 3);      INSERT INTO tbl VALUES (2, 2, 3);      UPDATE tbl set b = 10 WHERE a = 1;      DELETE FROM tbl WHERE a = 1;      DELETE FROM tbl;    END;}do_test trigger2-5 {  execsql {    INSERT INTO tbl VALUES(100, 200, 300);  }  db changes} {1}execsql {  DROP TABLE tbl;}ifcapable conflict {  # Handling of ON CONFLICT by INSERT statements inside triggers  execsql {    CREATE TABLE tbl (a primary key, b, c);    CREATE TRIGGER ai_tbl AFTER INSERT ON tbl BEGIN      INSERT OR IGNORE INTO tbl values (new.a, 0, 0);    END;  }  do_test trigger2-6.1a {    execsql {      BEGIN;      INSERT INTO tbl values (1, 2, 3);      SELECT * from tbl;    }  } {1 2 3}  do_test trigger2-6.1b {    catchsql {      INSERT OR ABORT INTO tbl values (2, 2, 3);    }  } {1 {column a is not unique}}  do_test trigger2-6.1c {    execsql {      SELECT * from tbl;    }  } {1 2 3}  do_test trigger2-6.1d {    catchsql {      INSERT OR FAIL INTO tbl values (2, 2, 3);    }  } {1 {column a is not unique}}  do_test trigger2-6.1e {    execsql {      SELECT * from tbl;    }  } {1 2 3 2 2 3}  do_test trigger2-6.1f {    execsql {      INSERT OR REPLACE INTO tbl values (2, 2, 3);      SELECT * from tbl;    }  } {1 2 3 2 0 0}  do_test trigger2-6.1g {    catchsql {      INSERT OR ROLLBACK INTO tbl values (3, 2, 3);    }  } {1 {column a is not unique}}  do_test trigger2-6.1h {    execsql {      SELECT * from tbl;    }  } {}  execsql {DELETE FROM tbl}      # Handling of ON CONFLICT by UPDATE statements inside triggers  execsql {    INSERT INTO tbl values (4, 2, 3);    INSERT INTO tbl values (6, 3, 4);    CREATE TRIGGER au_tbl AFTER UPDATE ON tbl BEGIN      UPDATE OR IGNORE tbl SET a = new.a, c = 10;    END;  }  do_test trigger2-6.2a {    execsql {      BEGIN;      UPDATE tbl SET a = 1 WHERE a = 4;      SELECT * from tbl;    }  } {1 2 10 6 3 4}  do_test trigger2-6.2b {    catchsql {      UPDATE OR ABORT tbl SET a = 4 WHERE a = 1;    }  } {1 {column a is not unique}}  do_test trigger2-6.2c {    execsql {      SELECT * from tbl;    }  } {1 2 10 6 3 4}  do_test trigger2-6.2d {    catchsql {      UPDATE OR FAIL tbl SET a = 4 WHERE a = 1;    }  } {1 {column a is not unique}}  do_test trigger2-6.2e {    execsql {      SELECT * from tbl;    }  } {4 2 10 6 3 4}  do_test trigger2-6.2f.1 {    execsql {      UPDATE OR REPLACE tbl SET a = 1 WHERE a = 4;      SELECT * from tbl;    }  } {1 3 10}  do_test trigger2-6.2f.2 {    execsql {      INSERT INTO tbl VALUES (2, 3, 4);      SELECT * FROM tbl;    }  } {1 3 10 2 3 4}  do_test trigger2-6.2g {    catchsql {      UPDATE OR ROLLBACK tbl SET a = 4 WHERE a = 1;    }  } {1 {column a is not unique}}  do_test trigger2-6.2h {    execsql {      SELECT * from tbl;    }  } {4 2 3 6 3 4}  execsql {    DROP TABLE tbl;  }} ; # ifcapable conflict# 7. Triggers on viewsifcapable view {do_test trigger2-7.1 {  execsql {  CREATE TABLE ab(a, b);  CREATE TABLE cd(c, d);  INSERT INTO ab VALUES (1, 2);  INSERT INTO ab VALUES (0, 0);  INSERT INTO cd VALUES (3, 4);  CREATE TABLE tlog(ii INTEGER PRIMARY KEY,       olda, oldb, oldc, oldd, newa, newb, newc, newd);  CREATE VIEW abcd AS SELECT a, b, c, d FROM ab, cd;  CREATE TRIGGER before_update INSTEAD OF UPDATE ON abcd BEGIN    INSERT INTO tlog VALUES(NULL, 	old.a, old.b, old.c, old.d, new.a, new.b, new.c, new.d);  END;  CREATE TRIGGER after_update INSTEAD OF UPDATE ON abcd BEGIN    INSERT INTO tlog VALUES(NULL, 	old.a, old.b, old.c, old.d, new.a, new.b, new.c, new.d);  END;  CREATE TRIGGER before_delete INSTEAD OF DELETE ON abcd BEGIN    INSERT INTO tlog VALUES(NULL, 	old.a, old.b, old.c, old.d, 0, 0, 0, 0);  END;  CREATE TRIGGER after_delete INSTEAD OF DELETE ON abcd BEGIN    INSERT INTO tlog VALUES(NULL, 	old.a, old.b, old.c, old.d, 0, 0, 0, 0);  END;  CREATE TRIGGER before_insert INSTEAD OF INSERT ON abcd BEGIN    INSERT INTO tlog VALUES(NULL, 	0, 0, 0, 0, new.a, new.b, new.c, new.d);  END;   CREATE TRIGGER after_insert INSTEAD OF INSERT ON abcd BEGIN    INSERT INTO tlog VALUES(NULL, 	0, 0, 0, 0, new.a, new.b, new.c, new.d);   END;  }} {};do_test trigger2-7.2 {  execsql {    UPDATE abcd SET a = 100, b = 5*5 WHERE a = 1;    DELETE FROM abcd WHERE a = 1;    INSERT INTO abcd VALUES(10, 20, 30, 40);    SELECT * FROM tlog;  }} [ list 1 1 2 3 4 100 25 3 4 \         2 1 2 3 4 100 25 3 4 \	 3 1 2 3 4 0 0 0 0 \	 4 1 2 3 4 0 0 0 0 \	 5 0 0 0 0 10 20 30 40 \	 6 0 0 0 0 10 20 30 40 ]do_test trigger2-7.3 {  execsql {    DELETE FROM tlog;    INSERT INTO abcd VALUES(10, 20, 30, 40);    UPDATE abcd SET a = 100, b = 5*5 WHERE a = 1;    DELETE FROM abcd WHERE a = 1;    SELECT * FROM tlog;  }} [ list \   1 0 0 0 0 10 20 30 40 \   2 0 0 0 0 10 20 30 40 \   3 1 2 3 4 100 25 3 4 \   4 1 2 3 4 100 25 3 4 \   5 1 2 3 4 0 0 0 0 \   6 1 2 3 4 0 0 0 0 \]do_test trigger2-7.4 {  execsql {    DELETE FROM tlog;    DELETE FROM abcd WHERE a = 1;    INSERT INTO abcd VALUES(10, 20, 30, 40);    UPDATE abcd SET a = 100, b = 5*5 WHERE a = 1;    SELECT * FROM tlog;  }} [ list \   1 1 2 3 4 0 0 0 0 \   2 1 2 3 4 0 0 0 0 \   3 0 0 0 0 10 20 30 40 \   4 0 0 0 0 10 20 30 40 \   5 1 2 3 4 100 25 3 4 \   6 1 2 3 4 100 25 3 4 \]do_test trigger2-8.1 {  execsql {    CREATE TABLE t1(a,b,c);    INSERT INTO t1 VALUES(1,2,3);    CREATE VIEW v1 AS      SELECT a+b AS x, b+c AS y, a+c AS z FROM t1;    SELECT * FROM v1;  }} {3 5 4}do_test trigger2-8.2 {  execsql {    CREATE TABLE v1log(a,b,c,d,e,f);    CREATE TRIGGER r1 INSTEAD OF DELETE ON v1 BEGIN      INSERT INTO v1log VALUES(OLD.x,NULL,OLD.y,NULL,OLD.z,NULL);    END;    DELETE FROM v1 WHERE x=1;    SELECT * FROM v1log;  }} {}do_test trigger2-8.3 {  execsql {    DELETE FROM v1 WHERE x=3;    SELECT * FROM v1log;  }} {3 {} 5 {} 4 {}}do_test trigger2-8.4 {  execsql {    INSERT INTO t1 VALUES(4,5,6);    DELETE FROM v1log;    DELETE FROM v1 WHERE y=11;    SELECT * FROM v1log;  }} {9 {} 11 {} 10 {}}do_test trigger2-8.5 {  execsql {    CREATE TRIGGER r2 INSTEAD OF INSERT ON v1 BEGIN      INSERT INTO v1log VALUES(NULL,NEW.x,NULL,NEW.y,NULL,NEW.z);    END;    DELETE FROM v1log;    INSERT INTO v1 VALUES(1,2,3);    SELECT * FROM v1log;  }} {{} 1 {} 2 {} 3}do_test trigger2-8.6 {  execsql {    CREATE TRIGGER r3 INSTEAD OF UPDATE ON v1 BEGIN      INSERT INTO v1log VALUES(OLD.x,NEW.x,OLD.y,NEW.y,OLD.z,NEW.z);    END;    DELETE FROM v1log;    UPDATE v1 SET x=x+100, y=y+200, z=z+300;    SELECT * FROM v1log;  }} {3 103 5 205 4 304 9 109 11 211 10 310}} ;# ifcapable viewintegrity_check trigger2-9.9finish_test

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩午夜在线观看视频| 日韩欧美一区二区在线视频| 日本不卡高清视频| 国产精品卡一卡二卡三| 欧美一级日韩一级| voyeur盗摄精品| 国内外成人在线视频| 亚洲成a人片综合在线| 亚洲视频1区2区| 国产欧美日韩另类一区| 欧美一区二区三区视频在线| 欧美视频一区二区三区| 91热门视频在线观看| 国产成人亚洲综合色影视| 久久电影网站中文字幕| 美女视频一区在线观看| 丝袜美腿亚洲综合| 美腿丝袜在线亚洲一区| 青青草原综合久久大伊人精品 | 性欧美大战久久久久久久久| 亚洲欧美中日韩| 欧美激情中文不卡| 国产欧美日韩麻豆91| 国产精品热久久久久夜色精品三区| 欧美xxxx老人做受| 国产日本一区二区| 日韩精品成人一区二区在线| 另类欧美日韩国产在线| 99久免费精品视频在线观看| 欧美在线观看18| 在线电影院国产精品| 欧美国产日本视频| 精品综合久久久久久8888| 三级久久三级久久久| 成人在线视频首页| 欧美日韩1234| 亚洲精品写真福利| 极品少妇一区二区| 91精品福利在线| 精品福利在线导航| 欧美国产日产图区| 亚洲第一搞黄网站| 成人av网址在线| 欧美一级二级三级蜜桃| 亚洲色图19p| 国产一区日韩二区欧美三区| 91片在线免费观看| 国产欧美一区二区精品忘忧草| 一区二区三区四区在线播放| 国产精品白丝jk黑袜喷水| 在线综合亚洲欧美在线视频| 亚洲日本韩国一区| 国产美女久久久久| 在线播放/欧美激情| 久久综合九色综合久久久精品综合 | 成人欧美一区二区三区1314| 久久99精品久久久| 欧美精品久久久久久久多人混战 | 久久天天做天天爱综合色| 亚洲电影在线播放| 欧美色区777第一页| 国产精品的网站| 成人动漫一区二区在线| 亚洲视频一二三区| 91小视频在线| 亚洲成av人片| 欧美videofree性高清杂交| 日韩成人一区二区| 日韩一级免费观看| 卡一卡二国产精品 | 欧美经典一区二区| 成人一区二区视频| 国产精品午夜在线| 欧美视频精品在线观看| 久久精品国产99国产| 日韩一级片网站| 国产一区二区三区四区五区入口 | 免费在线观看一区二区三区| 欧美电影一区二区| 国产一区免费电影| 亚洲欧美二区三区| 欧美色国产精品| 国产乱人伦偷精品视频不卡| 日韩美女视频19| 欧美日韩高清影院| 久久国产尿小便嘘嘘| 亚洲区小说区图片区qvod| 91精品国模一区二区三区| 色爱区综合激月婷婷| 亚洲人成网站影音先锋播放| 4438x成人网最大色成网站| 蜜臀av一区二区三区| 最好看的中文字幕久久| 日韩小视频在线观看专区| 在线观看一区不卡| 国产xxx精品视频大全| 亚洲综合免费观看高清完整版在线 | 欧美电视剧在线看免费| 欧美日韩一区二区三区在线看| 亚洲精品在线免费观看视频| 成人教育av在线| 日韩不卡一区二区| 欧美精品一区二区三区蜜臀| 欧美一区二区三区在线电影| 欧美电影一区二区| 欧美日韩国产a| 欧美视频完全免费看| 91在线观看视频| 成人性生交大片免费| 成人自拍视频在线| 国产综合久久久久久鬼色| 国产在线精品一区二区| 成人精品gif动图一区| 开心九九激情九九欧美日韩精美视频电影 | 精品日韩一区二区三区| 欧美一区二区三区电影| 日韩一区二区三区电影 | 日本韩国精品在线| 日本丶国产丶欧美色综合| 国产成人高清在线| 91影院在线免费观看| 色妞www精品视频| 欧美精品一二三区| 精品国产伦一区二区三区观看体验 | 在线看国产一区二区| 色综合婷婷久久| 欧洲av在线精品| 欧美日韩国产精选| 日韩欧美一二区| 久久久噜噜噜久久人人看 | 日本一区二区三区在线观看| 国产精品美女久久久久久久久久久| 国产日韩欧美综合一区| 亚洲人成伊人成综合网小说| 伊人色综合久久天天人手人婷| 午夜精品久久久久| 国产一二精品视频| 91片黄在线观看| 日韩丝袜情趣美女图片| 国产女同互慰高潮91漫画| 亚洲激情男女视频| 蜜桃一区二区三区在线观看| 丁香网亚洲国际| 欧美高清精品3d| 亚洲国产精品成人综合| 婷婷开心激情综合| 国产成人免费视频| 欧美电影免费观看完整版| 中文字幕一区日韩精品欧美| 男人操女人的视频在线观看欧美| 国产风韵犹存在线视精品| 欧美欧美午夜aⅴ在线观看| 国产无一区二区| 久久机这里只有精品| 欧美三级视频在线观看| 国产精品乱码妇女bbbb| 美女网站色91| 欧美日韩在线观看一区二区 | 99久久99精品久久久久久| 精品久久久久一区二区国产| 依依成人综合视频| 91福利国产精品| 亚洲视频精选在线| 成人精品国产福利| 国产精品国产精品国产专区不片| 狠狠久久亚洲欧美| 91精品国产综合久久久久久久久久 | 亚洲欧美一区二区三区极速播放| 国产成人一级电影| 精品成人免费观看| 九九视频精品免费| 精品欧美乱码久久久久久1区2区| 亚洲一区二区三区视频在线| 91首页免费视频| 亚洲精品一二三| 欧美在线观看一区二区| 亚洲一二三四在线| 欧美日韩久久不卡| 日韩在线卡一卡二| 日韩一级二级三级精品视频| 毛片不卡一区二区| 久久综合成人精品亚洲另类欧美 | 日本成人超碰在线观看| 91精品国产91热久久久做人人 | 亚洲国产三级在线| 欧美一区二区三区四区五区| 国模套图日韩精品一区二区| 欧美高清在线视频| 欧美探花视频资源| 久久99精品久久久久久动态图| 欧美高清在线视频| 欧美视频一区在线| 黄网站免费久久| 亚洲黄色片在线观看| 日韩一区二区免费高清| 国产成人日日夜夜| 香蕉av福利精品导航| 国产欧美日韩亚州综合| 欧美日韩在线播| 成人听书哪个软件好|