mySQL 5.0.11 sources for tomato
[tomato.git] / release / src / router / mysql / mysql-test / suite / engines / funcs / t / tr_update_after_error.test
blob3c40a43836f2c03b306a60437b06110b68b70048
1 --disable_warnings
2 DROP TABLE IF EXISTS t1,t2,t3;
3 --enable_warnings
4 CREATE TABLE t1 (c1 TINYINT NOT NULL PRIMARY KEY, c2 TINYINT);
5 INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
6 CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 TINYINT, new1 TINYINT, old2 TINYINT, new2 TINYINT);
7 CREATE TABLE t3(c1 TINYINT NOT NULL PRIMARY KEY, c2 TINYINT);
8 INSERT INTO t3 VALUES(1,0);
9 delimiter //;
10 --error 1362
11 CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
12 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
13 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
14 SET NEW.c2=100;
15 END//
16 DELIMITER ;//
17 delimiter //;
18 CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
19 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
20 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
21 SET NEW.c2=100;
22 END//
23 DELIMITER ;//
24 UPDATE t1 SET c2=10 WHERE c1=1;
25 UPDATE t1 SET c2=10 WHERE c1=0;
26 UPDATE t1 SET c2=10 WHERE c1=NULL;
27 UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
28 UPDATE t1 SET c2=10 WHERE c2=3;
29 SELECT * FROM t1 ORDER BY c1;
30 SELECT * FROM t2 ORDER BY c1;
31 SELECT * FROM t3 ORDER BY c1;
32 DROP TABLE t1,t2,t3;
33 CREATE TABLE t1 (c1 SMALLINT NOT NULL PRIMARY KEY, c2 SMALLINT);
34 INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
35 CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 SMALLINT, new1 SMALLINT, old2 SMALLINT, new2 SMALLINT);
36 CREATE TABLE t3(c1 SMALLINT NOT NULL PRIMARY KEY, c2 SMALLINT);
37 INSERT INTO t3 VALUES(1,0);
38 delimiter //;
39 --error 1362
40 CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
41 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
42 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
43 SET NEW.c2=100;
44 END//
45 DELIMITER ;//
46 delimiter //;
47 CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
48 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
49 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
50 SET NEW.c2=100;
51 END//
52 DELIMITER ;//
53 UPDATE t1 SET c2=10 WHERE c1=1;
54 UPDATE t1 SET c2=10 WHERE c1=0;
55 UPDATE t1 SET c2=10 WHERE c1=NULL;
56 UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
57 UPDATE t1 SET c2=10 WHERE c2=3;
58 SELECT * FROM t1 ORDER BY c1;
59 SELECT * FROM t2 ORDER BY c1;
60 SELECT * FROM t3 ORDER BY c1;
61 DROP TABLE t1,t2,t3;
62 CREATE TABLE t1 (c1 MEDIUMINT NOT NULL PRIMARY KEY, c2 MEDIUMINT);
63 INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
64 CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 MEDIUMINT, new1 MEDIUMINT, old2 MEDIUMINT, new2 MEDIUMINT);
65 CREATE TABLE t3(c1 MEDIUMINT NOT NULL PRIMARY KEY, c2 MEDIUMINT);
66 INSERT INTO t3 VALUES(1,0);
67 delimiter //;
68 --error 1362
69 CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
70 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
71 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
72 SET NEW.c2=100;
73 END//
74 DELIMITER ;//
75 delimiter //;
76 CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
77 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
78 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
79 SET NEW.c2=100;
80 END//
81 DELIMITER ;//
82 UPDATE t1 SET c2=10 WHERE c1=1;
83 UPDATE t1 SET c2=10 WHERE c1=0;
84 UPDATE t1 SET c2=10 WHERE c1=NULL;
85 UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
86 UPDATE t1 SET c2=10 WHERE c2=3;
87 SELECT * FROM t1 ORDER BY c1;
88 SELECT * FROM t2 ORDER BY c1;
89 SELECT * FROM t3 ORDER BY c1;
90 DROP TABLE t1,t2,t3;
91 CREATE TABLE t1 (c1 INT NOT NULL PRIMARY KEY, c2 INT);
92 INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
93 CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 INT, new1 INT, old2 INT, new2 INT);
94 CREATE TABLE t3(c1 INT NOT NULL PRIMARY KEY, c2 INT);
95 INSERT INTO t3 VALUES(1,0);
96 delimiter //;
97 --error 1362
98 CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
99 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
100 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
101 SET NEW.c2=100;
102 END//
103 DELIMITER ;//
104 delimiter //;
105 CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
106 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
107 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
108 SET NEW.c2=100;
109 END//
110 DELIMITER ;//
111 UPDATE t1 SET c2=10 WHERE c1=1;
112 UPDATE t1 SET c2=10 WHERE c1=0;
113 UPDATE t1 SET c2=10 WHERE c1=NULL;
114 UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
115 UPDATE t1 SET c2=10 WHERE c2=3;
116 SELECT * FROM t1 ORDER BY c1;
117 SELECT * FROM t2 ORDER BY c1;
118 SELECT * FROM t3 ORDER BY c1;
119 DROP TABLE t1,t2,t3;
120 CREATE TABLE t1 (c1 INTEGER NOT NULL PRIMARY KEY, c2 INTEGER);
121 INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
122 CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 INTEGER, new1 INTEGER, old2 INTEGER, new2 INTEGER);
123 CREATE TABLE t3(c1 INTEGER NOT NULL PRIMARY KEY, c2 INTEGER);
124 INSERT INTO t3 VALUES(1,0);
125 delimiter //;
126 --error 1362
127 CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
128 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
129 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
130 SET NEW.c2=100;
131 END//
132 DELIMITER ;//
133 delimiter //;
134 CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
135 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
136 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
137 SET NEW.c2=100;
138 END//
139 DELIMITER ;//
140 UPDATE t1 SET c2=10 WHERE c1=1;
141 UPDATE t1 SET c2=10 WHERE c1=0;
142 UPDATE t1 SET c2=10 WHERE c1=NULL;
143 UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
144 UPDATE t1 SET c2=10 WHERE c2=3;
145 SELECT * FROM t1 ORDER BY c1;
146 SELECT * FROM t2 ORDER BY c1;
147 SELECT * FROM t3 ORDER BY c1;
148 DROP TABLE t1,t2,t3;
149 CREATE TABLE t1 (c1 BIGINT NOT NULL PRIMARY KEY, c2 BIGINT);
150 INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
151 CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 BIGINT, new1 BIGINT, old2 BIGINT, new2 BIGINT);
152 CREATE TABLE t3(c1 BIGINT NOT NULL PRIMARY KEY, c2 BIGINT);
153 INSERT INTO t3 VALUES(1,0);
154 delimiter //;
155 --error 1362
156 CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
157 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
158 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
159 SET NEW.c2=100;
160 END//
161 DELIMITER ;//
162 delimiter //;
163 CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
164 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
165 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
166 SET NEW.c2=100;
167 END//
168 DELIMITER ;//
169 UPDATE t1 SET c2=10 WHERE c1=1;
170 UPDATE t1 SET c2=10 WHERE c1=0;
171 UPDATE t1 SET c2=10 WHERE c1=NULL;
172 UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
173 UPDATE t1 SET c2=10 WHERE c2=3;
174 SELECT * FROM t1 ORDER BY c1;
175 SELECT * FROM t2 ORDER BY c1;
176 SELECT * FROM t3 ORDER BY c1;
177 DROP TABLE t1,t2,t3;
178 CREATE TABLE t1 (c1 REAL NOT NULL PRIMARY KEY, c2 REAL);
179 INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
180 CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 REAL, new1 REAL, old2 REAL, new2 REAL);
181 CREATE TABLE t3(c1 REAL NOT NULL PRIMARY KEY, c2 REAL);
182 INSERT INTO t3 VALUES(1,0);
183 delimiter //;
184 --error 1362
185 CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
186 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
187 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
188 SET NEW.c2=100;
189 END//
190 DELIMITER ;//
191 delimiter //;
192 CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
193 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
194 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
195 SET NEW.c2=100;
196 END//
197 DELIMITER ;//
198 UPDATE t1 SET c2=10 WHERE c1=1;
199 UPDATE t1 SET c2=10 WHERE c1=0;
200 UPDATE t1 SET c2=10 WHERE c1=NULL;
201 UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
202 UPDATE t1 SET c2=10 WHERE c2=3;
203 SELECT * FROM t1 ORDER BY c1;
204 SELECT * FROM t2 ORDER BY c1;
205 SELECT * FROM t3 ORDER BY c1;
206 DROP TABLE t1,t2,t3;
207 CREATE TABLE t1 (c1 DOUBLE NOT NULL PRIMARY KEY, c2 DOUBLE);
208 INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
209 CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 DOUBLE, new1 DOUBLE, old2 DOUBLE, new2 DOUBLE);
210 CREATE TABLE t3(c1 DOUBLE NOT NULL PRIMARY KEY, c2 DOUBLE);
211 INSERT INTO t3 VALUES(1,0);
212 delimiter //;
213 --error 1362
214 CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
215 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
216 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
217 SET NEW.c2=100;
218 END//
219 DELIMITER ;//
220 delimiter //;
221 CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
222 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
223 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
224 SET NEW.c2=100;
225 END//
226 DELIMITER ;//
227 UPDATE t1 SET c2=10 WHERE c1=1;
228 UPDATE t1 SET c2=10 WHERE c1=0;
229 UPDATE t1 SET c2=10 WHERE c1=NULL;
230 UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
231 UPDATE t1 SET c2=10 WHERE c2=3;
232 SELECT * FROM t1 ORDER BY c1;
233 SELECT * FROM t2 ORDER BY c1;
234 SELECT * FROM t3 ORDER BY c1;
235 DROP TABLE t1,t2,t3;
236 CREATE TABLE t1 (c1 FLOAT NOT NULL PRIMARY KEY, c2 FLOAT);
237 INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
238 CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 FLOAT, new1 FLOAT, old2 FLOAT, new2 FLOAT);
239 CREATE TABLE t3(c1 FLOAT NOT NULL PRIMARY KEY, c2 FLOAT);
240 INSERT INTO t3 VALUES(1,0);
241 delimiter //;
242 --error 1362
243 CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
244 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
245 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
246 SET NEW.c2=100;
247 END//
248 DELIMITER ;//
249 delimiter //;
250 CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
251 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
252 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
253 SET NEW.c2=100;
254 END//
255 DELIMITER ;//
256 UPDATE t1 SET c2=10 WHERE c1=1;
257 UPDATE t1 SET c2=10 WHERE c1=0;
258 UPDATE t1 SET c2=10 WHERE c1=NULL;
259 UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
260 UPDATE t1 SET c2=10 WHERE c2=3;
261 SELECT * FROM t1 ORDER BY c1;
262 SELECT * FROM t2 ORDER BY c1;
263 SELECT * FROM t3 ORDER BY c1;
264 DROP TABLE t1,t2,t3;
265 CREATE TABLE t1 (c1 DECIMAL NOT NULL PRIMARY KEY, c2 DECIMAL);
266 INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
267 CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 DECIMAL, new1 DECIMAL, old2 DECIMAL, new2 DECIMAL);
268 CREATE TABLE t3(c1 DECIMAL NOT NULL PRIMARY KEY, c2 DECIMAL);
269 INSERT INTO t3 VALUES(1,0);
270 delimiter //;
271 --error 1362
272 CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
273 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
274 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
275 SET NEW.c2=100;
276 END//
277 DELIMITER ;//
278 delimiter //;
279 CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
280 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
281 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
282 SET NEW.c2=100;
283 END//
284 DELIMITER ;//
285 UPDATE t1 SET c2=10 WHERE c1=1;
286 UPDATE t1 SET c2=10 WHERE c1=0;
287 UPDATE t1 SET c2=10 WHERE c1=NULL;
288 UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
289 UPDATE t1 SET c2=10 WHERE c2=3;
290 SELECT * FROM t1 ORDER BY c1;
291 SELECT * FROM t2 ORDER BY c1;
292 SELECT * FROM t3 ORDER BY c1;
293 DROP TABLE t1,t2,t3;
294 CREATE TABLE t1 (c1 NUMERIC NOT NULL PRIMARY KEY, c2 NUMERIC);
295 INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
296 CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 NUMERIC, new1 NUMERIC, old2 NUMERIC, new2 NUMERIC);
297 CREATE TABLE t3(c1 NUMERIC NOT NULL PRIMARY KEY, c2 NUMERIC);
298 INSERT INTO t3 VALUES(1,0);
299 delimiter //;
300 --error 1362
301 CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
302 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
303 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
304 SET NEW.c2=100;
305 END//
306 DELIMITER ;//
307 delimiter //;
308 CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
309 INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
310 UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
311 SET NEW.c2=100;
312 END//
313 DELIMITER ;//
314 UPDATE t1 SET c2=10 WHERE c1=1;
315 UPDATE t1 SET c2=10 WHERE c1=0;
316 UPDATE t1 SET c2=10 WHERE c1=NULL;
317 UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
318 UPDATE t1 SET c2=10 WHERE c2=3;
319 SELECT * FROM t1 ORDER BY c1;
320 SELECT * FROM t2 ORDER BY c1;
321 SELECT * FROM t3 ORDER BY c1;
322 DROP TABLE t1,t2,t3;