~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to tests/r/insert_update.result

  • Committer: Brian Aker
  • Date: 2008-11-04 15:39:09 UTC
  • mfrom: (575.1.2 devel)
  • Revision ID: brian@tangent.org-20081104153909-c72hn65udxs1ccal
Merge of Monty's work

Show diffs side-by-side

added added

removed removed

Lines of Context:
107
107
drop table t1;
108
108
CREATE TABLE t1 (a INT, b INT, c INT, UNIQUE (A), UNIQUE(B));
109
109
INSERT t1 VALUES (1,2,10), (3,4,20);
110
 
INSERT t1 SELECT 5,6,30 FROM DUAL ON DUPLICATE KEY UPDATE c=c+100;
 
110
INSERT t1 SELECT 5,6,30 ON DUPLICATE KEY UPDATE c=c+100;
111
111
SELECT * FROM t1;
112
112
a       b       c
113
113
1       2       10
114
114
3       4       20
115
115
5       6       30
116
 
INSERT t1 SELECT 5,7,40 FROM DUAL ON DUPLICATE KEY UPDATE c=c+100;
 
116
INSERT t1 SELECT 5,7,40 ON DUPLICATE KEY UPDATE c=c+100;
117
117
SELECT * FROM t1;
118
118
a       b       c
119
119
1       2       10
120
120
3       4       20
121
121
5       6       130
122
 
INSERT t1 SELECT 8,4,50 FROM DUAL ON DUPLICATE KEY UPDATE c=c+1000;
 
122
INSERT t1 SELECT 8,4,50 ON DUPLICATE KEY UPDATE c=c+1000;
123
123
SELECT * FROM t1;
124
124
a       b       c
125
125
1       2       10
126
126
3       4       1020
127
127
5       6       130
128
 
INSERT t1 SELECT 1,4,60 FROM DUAL ON DUPLICATE KEY UPDATE c=c+10000;
 
128
INSERT t1 SELECT 1,4,60 ON DUPLICATE KEY UPDATE c=c+10000;
129
129
SELECT * FROM t1;
130
130
a       b       c
131
131
1       2       10010
132
132
3       4       1020
133
133
5       6       130
134
 
INSERT t1 SELECT 1,9,70 FROM DUAL ON DUPLICATE KEY UPDATE c=c+100000, b=4;
 
134
INSERT t1 SELECT 1,9,70 ON DUPLICATE KEY UPDATE c=c+100000, b=4;
135
135
ERROR 23000: Duplicate entry '4' for key 'b'
136
136
SELECT * FROM t1;
137
137
a       b       c
192
192
ERROR 23000: Column 't1.a' in field list is ambiguous
193
193
drop table t1;
194
194
CREATE TABLE t1 (
195
 
a BIGINT(20) NOT NULL DEFAULT 0,
 
195
a BIGINT NOT NULL DEFAULT 0,
196
196
PRIMARY KEY  (a)
197
197
) ENGINE=MyISAM;
198
198
INSERT INTO t1 ( a ) SELECT 0 ON DUPLICATE KEY UPDATE a = a + VALUES (a) ;
199
199
DROP TABLE t1;
200
200
CREATE TABLE t1
201
201
(
202
 
a   BIGINT UNSIGNED,
203
 
b   BIGINT UNSIGNED,
 
202
a   BIGINT,
 
203
b   BIGINT,
204
204
PRIMARY KEY (a)
205
205
);
206
206
INSERT INTO t1 VALUES (45, 1) ON DUPLICATE KEY UPDATE b =
236
236
INSERT INTO t1 SELECT 1, COUNT(*) FROM t2 ON DUPLICATE KEY UPDATE j= a;
237
237
ERROR 42S22: Unknown column 'a' in 'field list'
238
238
DROP TABLE t1,t2;
239
 
SET SQL_MODE = 'TRADITIONAL';
240
239
CREATE TABLE t1 (a INT PRIMARY KEY, b INT NOT NULL);
241
240
INSERT INTO t1 (a) VALUES (1);
242
241
ERROR HY000: Field 'b' doesn't have a default value
258
257
LAST_INSERT_ID()
259
258
1
260
259
DROP TABLE t1;
261
 
SET SQL_MODE='NO_AUTO_VALUE_ON_ZERO';
262
260
CREATE TABLE `t1` (
263
 
`id` int(11) PRIMARY KEY auto_increment,
 
261
`id` int PRIMARY KEY auto_increment,
264
262
`f1` varchar(10) NOT NULL UNIQUE
265
263
);
266
264
INSERT IGNORE INTO t1 (f1) VALUES ("test1")
278
276
SELECT * FROM t1;
279
277
id      f1
280
278
1       test1
281
 
2       test2
 
279
3       test2
282
280
INSERT IGNORE INTO t1 (f1) VALUES ("test2")
283
281
ON DUPLICATE KEY UPDATE id=LAST_INSERT_ID(id);
284
282
SELECT LAST_INSERT_ID();
285
283
LAST_INSERT_ID()
286
 
2
 
284
3
287
285
SELECT * FROM t1;
288
286
id      f1
289
287
1       test1
290
 
2       test2
 
288
3       test2
291
289
INSERT IGNORE INTO t1 (f1) VALUES ("test3")
292
290
ON DUPLICATE KEY UPDATE id=LAST_INSERT_ID(id);
293
291
SELECT LAST_INSERT_ID();
294
292
LAST_INSERT_ID()
295
 
3
 
293
5
296
294
SELECT * FROM t1;
297
295
id      f1
298
296
1       test1
299
 
2       test2
300
 
3       test3
 
297
3       test2
 
298
5       test3
301
299
DROP TABLE t1;
302
300
CREATE TABLE `t1` (
303
 
`id` int(11) PRIMARY KEY auto_increment,
 
301
`id` int PRIMARY KEY auto_increment,
304
302
`f1` varchar(10) NOT NULL UNIQUE
305
303
);
306
304
INSERT IGNORE INTO t1 (f1) VALUES ("test1")
322
320
2       test4
323
321
DROP TABLE t1;
324
322
CREATE TABLE `t1` (
325
 
`id` int(11) PRIMARY KEY auto_increment,
 
323
`id` int PRIMARY KEY auto_increment,
326
324
`f1` varchar(10) NOT NULL UNIQUE,
327
325
tim1 timestamp default '2003-01-01 00:00:00' on update current_timestamp
328
326
);
333
331
REPLACE INTO t1 VALUES (0,"test1",null);
334
332
SELECT id, f1 FROM t1;
335
333
id      f1
336
 
0       test1
 
334
2       test1
337
335
DROP TABLE t1;
338
 
SET SQL_MODE='';
339
336
CREATE TABLE t1 (
340
337
id INT AUTO_INCREMENT PRIMARY KEY,
341
338
c1 CHAR(1) UNIQUE KEY,
397
394
f2 timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP);
398
395
insert into t1(f1) values(1);
399
396
select @stamp1:=f2 from t1;
400
 
@stamp1:=f2
 
397
@stamp1:=f2 
401
398
#
402
399
insert into t1(f1) values(1) on duplicate key update f1=1;
403
400
select @stamp2:=f2 from t1;
404
 
@stamp2:=f2
 
401
@stamp2:=f2 
405
402
#
406
403
select if( @stamp1 = @stamp2, "correct", "wrong");
407
404
if( @stamp1 = @stamp2, "correct", "wrong")