⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 triggerrefclause.out

📁 derby database source code.good for you.
💻 OUT
📖 第 1 页 / 共 2 页
字号:
insert into x values 1,3,4,5,6,9,666,667,668;9 rows inserted/updated/deletedij> update x set x = x+1;9 rows inserted/updated/deletedij> select * from x;X          -----------2          4          5          6          7          10         667        668        669        ij> select * from removed;X          -----------ij> drop table x;0 rows inserted/updated/deletedij> drop table removed;0 rows inserted/updated/deletedij> commit;ij> create table x (x int, y int);0 rows inserted/updated/deletedij> create table y (x int, y int);0 rows inserted/updated/deletedij> create trigger t1 after insert on x referencing new_table as newtab for each statement mode db2sql	insert into y select newtab.x, y+newtab.y from newtab;0 rows inserted/updated/deletedij> insert into x values (1,1);1 row inserted/updated/deletedij> select * from y;X          |Y          -----------------------1          |2          ij> delete from y;1 row inserted/updated/deletedij> drop trigger t1;0 rows inserted/updated/deletedij> -- how about a correlation of a transition variablecreate trigger t1 after insert on x referencing new_table as newtab for each statement mode db2sql	insert into y select newtab2.x, y+newtab2.y from newtab newtab2;0 rows inserted/updated/deletedij> insert into x values (1,1);1 row inserted/updated/deletedij> select * from y;X          |Y          -----------------------1          |2          ij> -- lets prove that we are getting object types from row transition-- variables.  this is only an issue with row triggers because-- they are doing some funky stuff under the covers to make-- a column appear just like a normal table columndrop table x;0 rows inserted/updated/deletedij> drop table y;0 rows inserted/updated/deletedij> create table val (x int);0 rows inserted/updated/deletedij> create table x (b char(5) FOR BIT DATA);0 rows inserted/updated/deletedij> create table y (b char(5) FOR BIT DATA);0 rows inserted/updated/deletedij> create trigger t1 after insert on x referencing new as new for each row mode db2sql insert into y values (new.b || X'80');0 rows inserted/updated/deletedij> insert into x values (X'E0');ERROR 22001: A truncation error was encountered trying to shrink CHAR () FOR BIT DATA 'e02020202080' to length 5.ij> select * from y;B         ----------ij> drop trigger t1;0 rows inserted/updated/deletedij> create trigger t1 after insert on x referencing new as new for each row mode db2sql insert into y values new.b;0 rows inserted/updated/deletedij> insert into x values null;1 row inserted/updated/deletedij> select * from y;B         ----------NULL      ij> drop trigger t1;0 rows inserted/updated/deletedij> create trigger t1 after insert on x referencing new as new for each row mode db2sql insert into val values length(new.b);0 rows inserted/updated/deletedij> insert into x values X'FFE0';1 row inserted/updated/deletedij> select * from val;X          -----------5          ij> drop table x;0 rows inserted/updated/deletedij> drop table y;0 rows inserted/updated/deletedij> drop table val;0 rows inserted/updated/deletedij> create table x (x dec(7,3));0 rows inserted/updated/deletedij> create table y (x dec(8,4));0 rows inserted/updated/deletedij> insert into x values 1234.1234, null, 1234.123;3 rows inserted/updated/deletedij> select * from x;X         ----------1234.123  NULL      1234.123  ij> select * from y;X          -----------ij> create table t1 (col1 int not null primary key, col2 char(20));0 rows inserted/updated/deletedij> create table s_t1(col1 int not null primary key, chgType char(20));0 rows inserted/updated/deletedij> -- should workcreate trigger trig_delete_2 after delete on t1 referencing OLD_TABLE as OLD for each statement mode db2sql 	insert into s_t1 (select col1, 'D'	from OLD  where OLD.col1 <> ALL	(select col1 from s_t1 where  OLD.col1 = s_t1.col1));0 rows inserted/updated/deletedij> drop trigger trig_delete_2;0 rows inserted/updated/deletedij> -- should workcreate trigger trig_delete_2 after delete on t1 referencing old_table as OLD for each statement mode db2sql 	insert into s_t1 (select col1, 'D'	from OLD where OLD.col1 <> ALL	(select s_t1.col1 from s_t1, OLD where  OLD.col1 = s_t1.col1));0 rows inserted/updated/deletedij> insert into t1 values (5, 'first row'), (3, 'second row'), (9, 'third row'),			(4, 'forth row');4 rows inserted/updated/deletedij> select * from s_t1;COL1       |CHGTYPE             --------------------------------ij> delete from t1 where col1 = 3 or col1 = 9;2 rows inserted/updated/deletedij> select * from s_t1;COL1       |CHGTYPE             --------------------------------3          |D                   9          |D                   ij> insert into t1 values (9, 'third row'), (3, 'second row'), (7, 'fifth row');3 rows inserted/updated/deletedij> delete from t1 where col1 = 3 or col1 = 7;2 rows inserted/updated/deletedij> select * from s_t1;COL1       |CHGTYPE             --------------------------------3          |D                   9          |D                   7          |D                   ij> delete from t1;3 rows inserted/updated/deletedij> select * from s_t1;COL1       |CHGTYPE             --------------------------------3          |D                   9          |D                   7          |D                   5          |D                   4          |D                   ij> rollback;ij> 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -