insert.result 12.4 KB
Newer Older
unknown's avatar
unknown committed
1
drop table if exists t1,t2,t3;
unknown's avatar
unknown committed
2 3 4
create table t1 (a int not null);
insert into t1 values (1);
insert into t1 values (a+2);
5 6
insert into t1 values (a+3),(a+4);
insert into t1 values (5),(a+6);
unknown's avatar
unknown committed
7
select * from t1;
8 9 10 11 12 13
a
1
2
3
4
5
14
6
unknown's avatar
unknown committed
15 16 17 18 19 20 21 22
drop table t1;
create table t1 (id int not null auto_increment primary key, username varchar(32) not null, unique (username));
insert into t1 values (0,"mysql");
insert into t1 values (0,"mysql ab");
insert into t1 values (0,"mysql a");
insert into t1 values (0,"r1manic");
insert into t1 values (0,"r1man");
drop table t1;
23 24 25 26 27 28 29 30
create table t1 (a int not null auto_increment, primary key (a), t timestamp, c char(10) default "hello", i int);
insert into t1 values (default,default,default,default), (default,default,default,default), (4,0,"a",5),(default,default,default,default);
select a,t>0,c,i from t1;
a	t>0	c	i
1	1	hello	NULL
2	1	hello	NULL
4	0	a	5
5	1	hello	NULL
unknown's avatar
unknown committed
31 32
truncate table t1;
insert into t1 set a=default,t=default,c=default;
33 34 35 36 37 38 39 40 41 42 43
insert into t1 set a=default,t=default,c=default,i=default;
insert into t1 set a=4,t=0,c="a",i=5;
insert into t1 set a=5,t=0,c="a",i=null;
insert into t1 set a=default,t=default,c=default,i=default;
select a,t>0,c,i from t1;
a	t>0	c	i
1	1	hello	NULL
2	1	hello	NULL
4	0	a	5
5	0	a	NULL
6	1	hello	NULL
unknown's avatar
unknown committed
44
drop table t1;
45 46 47 48 49
create table t1 (sid char(20), id int(2) NOT NULL auto_increment, key(sid, id));
insert into t1 values ('skr',NULL),('skr',NULL),('test',NULL);
select * from t1;
sid	id
skr	1
50
skr	2
51 52 53 54 55 56 57
test	1
insert into t1 values ('rts',NULL),('rts',NULL),('test',NULL);
select * from t1;
sid	id
rts	1
rts	2
skr	1
58
skr	2
59
test	1
60
test	2
61
drop table t1;
unknown's avatar
unknown committed
62 63
create table t1 (id int NOT NULL DEFAULT 8);
insert into t1 values(NULL);
unknown's avatar
unknown committed
64
ERROR 23000: Column 'id' cannot be null
unknown's avatar
unknown committed
65
insert into t1 values (1), (NULL), (2);
unknown's avatar
unknown committed
66
Warnings:
67
Warning	1048	Column 'id' cannot be null
unknown's avatar
unknown committed
68 69 70
select * from t1;
id
1
unknown's avatar
unknown committed
71
0
unknown's avatar
unknown committed
72 73
2
drop table t1;
74 75 76
create table t1 (email varchar(50));
insert into t1 values ('sasha@mysql.com'),('monty@mysql.com'),('foo@hotmail.com'),('foo@aol.com'),('bar@aol.com');
create table t2(id int not null auto_increment primary key, t2 varchar(50), unique(t2));
77
insert delayed into t2 (t2) select distinct substring(email, locate('@', email)+1) from t1;
78 79 80 81 82 83 84 85 86
select * from t2;
id	t2
1	mysql.com
2	hotmail.com
3	aol.com
drop table t1,t2;
drop database if exists mysqltest;
create database mysqltest;
use mysqltest;
unknown's avatar
unknown committed
87
create table t1 (c int);
88 89
insert into mysqltest.t1 set mysqltest.t1.c = '1';
drop database mysqltest;
90
use test;
unknown's avatar
unknown committed
91
create table t1(number int auto_increment primary key, original_value varchar(50), f_double double, f_float float, f_double_7_2 double(7,2), f_float_4_3 float (4,3), f_double_u double unsigned, f_float_u float unsigned, f_double_15_1_u double(15,1) unsigned, f_float_3_1_u float (3,1) unsigned);
92 93 94
set @value= "aa";
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
Warnings:
unknown's avatar
unknown committed
95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113
Warning	1265	Data truncated for column 'f_double' at row 1
Warning	1265	Data truncated for column 'f_float' at row 1
Warning	1265	Data truncated for column 'f_double_7_2' at row 1
Warning	1265	Data truncated for column 'f_float_4_3' at row 1
Warning	1265	Data truncated for column 'f_double_u' at row 1
Warning	1265	Data truncated for column 'f_float_u' at row 1
Warning	1265	Data truncated for column 'f_double_15_1_u' at row 1
Warning	1265	Data truncated for column 'f_float_3_1_u' at row 1
select * from t1 where number =last_insert_id();
number	1
original_value	aa
f_double	0
f_float	0
f_double_7_2	0.00
f_float_4_3	0.000
f_double_u	0
f_float_u	0
f_double_15_1_u	0.0
f_float_3_1_u	0.0
114 115 116
set @value= "1aa";
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
Warnings:
unknown's avatar
unknown committed
117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135
Warning	1265	Data truncated for column 'f_double' at row 1
Warning	1265	Data truncated for column 'f_float' at row 1
Warning	1265	Data truncated for column 'f_double_7_2' at row 1
Warning	1265	Data truncated for column 'f_float_4_3' at row 1
Warning	1265	Data truncated for column 'f_double_u' at row 1
Warning	1265	Data truncated for column 'f_float_u' at row 1
Warning	1265	Data truncated for column 'f_double_15_1_u' at row 1
Warning	1265	Data truncated for column 'f_float_3_1_u' at row 1
select * from t1 where number =last_insert_id();
number	2
original_value	1aa
f_double	1
f_float	1
f_double_7_2	1.00
f_float_4_3	1.000
f_double_u	1
f_float_u	1
f_double_15_1_u	1.0
f_float_3_1_u	1.0
136 137 138
set @value= "aa1";
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
Warnings:
unknown's avatar
unknown committed
139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157
Warning	1265	Data truncated for column 'f_double' at row 1
Warning	1265	Data truncated for column 'f_float' at row 1
Warning	1265	Data truncated for column 'f_double_7_2' at row 1
Warning	1265	Data truncated for column 'f_float_4_3' at row 1
Warning	1265	Data truncated for column 'f_double_u' at row 1
Warning	1265	Data truncated for column 'f_float_u' at row 1
Warning	1265	Data truncated for column 'f_double_15_1_u' at row 1
Warning	1265	Data truncated for column 'f_float_3_1_u' at row 1
select * from t1 where number =last_insert_id();
number	3
original_value	aa1
f_double	0
f_float	0
f_double_7_2	0.00
f_float_4_3	0.000
f_double_u	0
f_float_u	0
f_double_15_1_u	0.0
f_float_3_1_u	0.0
158 159 160
set @value= "1e+1111111111a";
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
Warnings:
161 162 163 164 165 166 167 168 169 170 171 172 173 174
Warning	1264	Out of range value for column 'f_double' at row 1
Warning	1264	Out of range value for column 'f_float' at row 1
Warning	1264	Out of range value for column 'f_float' at row 1
Warning	1264	Out of range value for column 'f_double_7_2' at row 1
Warning	1264	Out of range value for column 'f_double_7_2' at row 1
Warning	1264	Out of range value for column 'f_float_4_3' at row 1
Warning	1264	Out of range value for column 'f_float_4_3' at row 1
Warning	1264	Out of range value for column 'f_double_u' at row 1
Warning	1264	Out of range value for column 'f_float_u' at row 1
Warning	1264	Out of range value for column 'f_float_u' at row 1
Warning	1264	Out of range value for column 'f_double_15_1_u' at row 1
Warning	1264	Out of range value for column 'f_double_15_1_u' at row 1
Warning	1264	Out of range value for column 'f_float_3_1_u' at row 1
Warning	1264	Out of range value for column 'f_float_3_1_u' at row 1
unknown's avatar
unknown committed
175 176 177 178 179 180 181 182 183 184 185
select * from t1 where number =last_insert_id();
number	4
original_value	1e+1111111111a
f_double	1.79769313486232e+308
f_float	3.40282e+38
f_double_7_2	99999.99
f_float_4_3	9.999
f_double_u	1.79769313486232e+308
f_float_u	3.40282e+38
f_double_15_1_u	99999999999999.9
f_float_3_1_u	99.9
186 187 188
set @value= "-1e+1111111111a";
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
Warnings:
189 190 191 192 193 194 195 196 197 198 199 200 201 202 203
Warning	1264	Out of range value for column 'f_double' at row 1
Warning	1264	Out of range value for column 'f_float' at row 1
Warning	1264	Out of range value for column 'f_float' at row 1
Warning	1264	Out of range value for column 'f_double_7_2' at row 1
Warning	1264	Out of range value for column 'f_double_7_2' at row 1
Warning	1264	Out of range value for column 'f_float_4_3' at row 1
Warning	1264	Out of range value for column 'f_float_4_3' at row 1
Warning	1264	Out of range value for column 'f_double_u' at row 1
Warning	1264	Out of range value for column 'f_double_u' at row 1
Warning	1264	Out of range value for column 'f_float_u' at row 1
Warning	1264	Out of range value for column 'f_float_u' at row 1
Warning	1264	Out of range value for column 'f_double_15_1_u' at row 1
Warning	1264	Out of range value for column 'f_double_15_1_u' at row 1
Warning	1264	Out of range value for column 'f_float_3_1_u' at row 1
Warning	1264	Out of range value for column 'f_float_3_1_u' at row 1
unknown's avatar
unknown committed
204 205 206 207 208 209 210 211 212 213 214
select * from t1 where number =last_insert_id();
number	5
original_value	-1e+1111111111a
f_double	-1.79769313486232e+308
f_float	-3.40282e+38
f_double_7_2	-99999.99
f_float_4_3	-9.999
f_double_u	0
f_float_u	0
f_double_15_1_u	0.0
f_float_3_1_u	0.0
215
set @value= 1e+1111111111;
unknown's avatar
unknown committed
216
ERROR 22007: Illegal double '1e+1111111111' value found during parsing
217
set @value= -1e+1111111111;
unknown's avatar
unknown committed
218
ERROR 22007: Illegal double '1e+1111111111' value found during parsing
219 220 221
set @value= 1e+111;
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
Warnings:
222 223 224 225 226 227
Warning	1264	Out of range value for column 'f_float' at row 1
Warning	1264	Out of range value for column 'f_double_7_2' at row 1
Warning	1264	Out of range value for column 'f_float_4_3' at row 1
Warning	1264	Out of range value for column 'f_float_u' at row 1
Warning	1264	Out of range value for column 'f_double_15_1_u' at row 1
Warning	1264	Out of range value for column 'f_float_3_1_u' at row 1
unknown's avatar
unknown committed
228
select * from t1 where number =last_insert_id();
unknown's avatar
unknown committed
229
number	6
unknown's avatar
unknown committed
230 231 232 233 234 235 236 237 238
original_value	1e+111
f_double	1e+111
f_float	3.40282e+38
f_double_7_2	99999.99
f_float_4_3	9.999
f_double_u	1e+111
f_float_u	3.40282e+38
f_double_15_1_u	99999999999999.9
f_float_3_1_u	99.9
239 240 241
set @value= -1e+111;
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
Warnings:
242 243 244 245 246 247 248
Warning	1264	Out of range value for column 'f_float' at row 1
Warning	1264	Out of range value for column 'f_double_7_2' at row 1
Warning	1264	Out of range value for column 'f_float_4_3' at row 1
Warning	1264	Out of range value for column 'f_double_u' at row 1
Warning	1264	Out of range value for column 'f_float_u' at row 1
Warning	1264	Out of range value for column 'f_double_15_1_u' at row 1
Warning	1264	Out of range value for column 'f_float_3_1_u' at row 1
unknown's avatar
unknown committed
249
select * from t1 where number =last_insert_id();
unknown's avatar
unknown committed
250
number	7
unknown's avatar
unknown committed
251 252 253 254 255 256 257 258 259
original_value	-1e+111
f_double	-1e+111
f_float	-3.40282e+38
f_double_7_2	-99999.99
f_float_4_3	-9.999
f_double_u	0
f_float_u	0
f_double_15_1_u	0.0
f_float_3_1_u	0.0
260 261
set @value= 1;
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
unknown's avatar
unknown committed
262
select * from t1 where number =last_insert_id();
unknown's avatar
unknown committed
263
number	8
unknown's avatar
unknown committed
264 265 266 267 268 269 270 271 272
original_value	1
f_double	1
f_float	1
f_double_7_2	1.00
f_float_4_3	1.000
f_double_u	1
f_float_u	1
f_double_15_1_u	1.0
f_float_3_1_u	1.0
273 274 275
set @value= -1;
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
Warnings:
276 277 278 279
Warning	1264	Out of range value for column 'f_double_u' at row 1
Warning	1264	Out of range value for column 'f_float_u' at row 1
Warning	1264	Out of range value for column 'f_double_15_1_u' at row 1
Warning	1264	Out of range value for column 'f_float_3_1_u' at row 1
unknown's avatar
unknown committed
280
select * from t1 where number =last_insert_id();
unknown's avatar
unknown committed
281
number	9
unknown's avatar
unknown committed
282 283 284 285 286 287 288 289 290
original_value	-1
f_double	-1
f_float	-1
f_double_7_2	-1.00
f_float_4_3	-1.000
f_double_u	0
f_float_u	0
f_double_15_1_u	0.0
f_float_3_1_u	0.0
unknown's avatar
unknown committed
291
drop table t1;
292 293 294 295 296 297 298 299 300 301
create table t1(id1 int not null auto_increment primary key, t char(12));
create table t2(id2 int not null, t char(12));
create table t3(id3 int not null, t char(12), index(id3));
select count(*) from t2;
count(*)
500
insert into  t2 select t1.* from t1, t2 t, t3 where  t1.id1 = t.id2 and t.id2 = t3.id3;
select count(*) from t2;
count(*)
25500
unknown's avatar
unknown committed
302
drop table t1,t2,t3;
303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323
create table t1 (a int, b int);
insert into t1 (a,b) values (a,b);
insert into t1 SET a=1, b=a+1;
insert into t1 (a,b) select 1,2;
INSERT INTO t1 ( a ) SELECT 0 ON DUPLICATE KEY UPDATE a = a + VALUES (a);
prepare stmt1 from ' replace into t1 (a,a) select 100, ''hundred'' ';
execute stmt1;
ERROR 42000: Column 'a' specified twice
insert into t1 (a,b,b) values (1,1,1);
ERROR 42000: Column 'b' specified twice
insert into t1 (a,a) values (1,1,1);
ERROR 21S01: Column count doesn't match value count at row 1
insert into t1 (a,a) values (1,1);
ERROR 42000: Column 'a' specified twice
insert into t1 SET a=1,b=2,a=1;
ERROR 42000: Column 'a' specified twice
insert into t1 (b,b) select 1,2;
ERROR 42000: Column 'b' specified twice
INSERT INTO t1 (b,b) SELECT 0,0 ON DUPLICATE KEY UPDATE a = a + VALUES (a);
ERROR 42000: Column 'b' specified twice
drop table t1;
324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349
create table t1 (id int primary key, data int);
insert into t1 values (1, 1), (2, 2), (3, 3);
select row_count();
row_count()
3
insert ignore into t1 values (1, 1);
select row_count();
row_count()
0
replace into t1 values (1, 11);
select row_count();
row_count()
2
replace into t1 values (4, 4);
select row_count();
row_count()
1
insert into t1 values (2, 2) on duplicate key update data= data + 10;
select row_count();
row_count()
2
insert into t1 values (5, 5) on duplicate key update data= data + 10;
select row_count();
row_count()
1
drop table t1;
350 351 352 353 354 355 356 357 358 359 360 361 362 363 364
create table t1 (id int primary key auto_increment, data int, unique(data));
insert ignore into t1 values(NULL,100),(NULL,110),(NULL,120);
insert ignore into t1 values(NULL,10),(NULL,20),(NULL,110),(NULL,120),(NULL,100),(NULL,90);
insert ignore into t1 values(NULL,130),(NULL,140),(500,110),(550,120),(450,100),(NULL,150);
select * from t1 order by id;
id	data
1	100
2	110
3	120
4	10
5	20
6	90
7	130
8	140
9	150