9
9
create table t1 (a int);
10
--error ER_TABLE_EXISTS_ERROR
11
11
create table t1 (a int);
12
12
show count(*) errors;
15
--error ER_PARSE_ERROR
16
create table t2(a int) default charset qwerty;
16
20
create table t (i);
17
21
show count(*) errors;
19
23
insert into t1 values (1);
20
--error ER_TRUNCATED_WRONG_VALUE_FOR_FIELD
21
24
insert into t1 values ("hej");
22
--error ER_TRUNCATED_WRONG_VALUE_FOR_FIELD
23
25
insert into t1 values ("hej"),("d�");
24
26
set SQL_WARNINGS=1;
25
--error ER_TRUNCATED_WRONG_VALUE_FOR_FIELD
26
27
insert into t1 values ("hej");
27
--error ER_TRUNCATED_WRONG_VALUE_FOR_FIELD
28
28
insert into t1 values ("hej"),("d�");
30
30
set SQL_WARNINGS=0;
49
# Test error for LOAD DATA INFILE
49
# Test warnings for LOAD DATA INFILE
52
52
create table t1(a int, b int not null, c date, d char(5));
53
--replace_result $DRIZZLETEST_VARDIR DRIZZLETEST_VARDIR
54
--error ER_WARN_NULL_TO_NOTNULL
55
eval load data infile '$DRIZZLETEST_VARDIR/std_data_ln/warnings_loaddata.dat' into table t1 fields terminated by ',';
53
load data infile '../std_data_ln/warnings_loaddata.dat' into table t1 fields terminated by ',';
56
54
# PS doesn't work good with @@warning_count
57
55
--disable_ps_protocol
58
56
select @@warning_count;
63
# Errors and Warnings from basic INSERT, UPDATE and ALTER commands
61
# Warnings from basic INSERT, UPDATE and ALTER commands
66
64
create table t1(a int NOT NULL, b int, c char(5));
68
# Error data to big for character field
69
--error ER_DATA_TOO_LONG
70
insert into t1 values(-1,100,'mysql'),(10,-1,'mysql ab'),(500,256,'open source'),(20,NULL,'test');
71
insert into t1 values(-1,100,'mysql'),(10,-1,'dri '),(500,256,'zzle'),(20,NULL,'test');
73
# Error as changing width truncates data
74
--error ER_WARN_DATA_TRUNCATED
65
insert into t1 values(NULL,100,'mysql'),(10,-1,'mysql ab'),(500,256,'open source'),(20,NULL,'test');
75
66
alter table t1 modify c char(4);
76
67
alter table t1 add d char(2);
78
# Error trying to insert NULL data into NOT NULL field
79
--error ER_BAD_NULL_ERROR
80
69
update t1 set a=NULL where a=10;
82
# Error data to big for character field
83
--error ER_DATA_TOO_LONG
84
update t1 set c='drizzle' where c='test';
86
# Error data to big for character field
87
--error ER_DATA_TOO_LONG
70
update t1 set c='mysql ab' where c='test';
90
72
create table t2(a int NOT NULL, b char(3));
92
# Error data to big for character field
93
--error ER_DATA_TOO_LONG
94
73
insert into t2 select b,c from t1;
96
# Error 'a' doesn't have a default value
97
--error ER_NO_DEFAULT_FOR_FIELD
98
74
insert into t2(b) values('mysqlab');
99
insert into t2(a) values(1);
101
75
set sql_warnings=1;
103
# Error data to big for character field
104
--error ER_DATA_TOO_LONG
105
insert into t2(a,b) values(1,'mysqlab');
106
insert into t2(a,b) values(1,'mys');
76
insert into t2(b) values('mysqlab');
108
77
set sql_warnings=0;
109
78
drop table t1, t2;
155
# Tests for show errors and warnings limit a, b
116
# Tests for show warnings limit a, b
157
118
create table t1 (a int);
158
119
insert into t1 (a) values (1), (2), (3), (4), (5), (6), (7), (8), (9), (10);
159
# Incorrect integer value abc for column a
160
--error ER_TRUNCATED_WRONG_VALUE_FOR_FIELD
120
# should generate 10 warnings
161
121
update t1 set a='abc';
162
122
show warnings limit 2, 1;
163
123
show warnings limit 0, 10;
177
137
--echo End of 4.1 tests
179
create table t1 (c_char char(255), c_varchar varchar(255), c_tinytext blob);
140
# Bug#20778: strange characters in warning message 1366 when called in SP
143
CREATE TABLE t1( f1 CHAR(20) );
144
CREATE TABLE t2( f1 CHAR(20), f2 CHAR(25) );
145
CREATE TABLE t3( f1 CHAR(20), f2 CHAR(25), f3 DATE );
147
INSERT INTO t1 VALUES ( 'a`' );
148
INSERT INTO t2 VALUES ( 'a`', 'a`' );
149
INSERT INTO t3 VALUES ( 'a`', 'a`', '1000-01-1' );
151
DROP PROCEDURE IF EXISTS sp1;
152
DROP PROCEDURE IF EXISTS sp2;
153
DROP PROCEDURE IF EXISTS sp3;
155
CREATE PROCEDURE sp1()
157
DECLARE x NUMERIC ZEROFILL;
158
SELECT f1 INTO x FROM t1 LIMIT 1;
160
CREATE PROCEDURE sp2()
162
DECLARE x NUMERIC ZEROFILL;
163
SELECT f1 INTO x FROM t2 LIMIT 1;
165
CREATE PROCEDURE sp3()
167
DECLARE x NUMERIC ZEROFILL;
168
SELECT f1 INTO x FROM t3 LIMIT 1;
175
DROP PROCEDURE IF EXISTS sp1;
177
CREATE PROCEDURE sp1()
179
declare x numeric zerofill;
180
SELECT f1 into x from t2 limit 1;
193
# Bug#30059: End-space truncation warnings are inconsistent or incorrect
196
create table t1 (c_char char(255), c_varchar varchar(255), c_tinytext tinytext);
197
create table t2 (c_tinyblob tinyblob); # not affected by bug, for regression testing
180
198
set @c = repeat(' ', 256);
181
199
set @q = repeat('q', 256);
183
# BUG, 309791 currently only gives a warning but should give error
184
--error ER_DATA_TOO_LONG
185
insert into t1 values(@c, @c, @c);
187
--error ER_DATA_TOO_LONG
203
insert into t1 values(@c, @c, @c);
204
insert into t2 values(@c);
205
insert into t1 values(@q, @q, @q);
206
insert into t2 values(@q);
208
set sql_mode = 'traditional';
210
insert into t1 values(@c, @c, @c);
212
insert into t2 values(@c);
188
214
insert into t1 values(@q, NULL, NULL);
189
--error ER_DATA_TOO_LONG
190
216
insert into t1 values(NULL, @q, NULL);
191
218
insert into t1 values(NULL, NULL, @q);
195
--echo End of Drizzle tests
220
insert into t2 values(@q);
224
--echo End of 5.0 tests