~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to tests/t/null.test

  • Committer: Brian Aker
  • Date: 2011-02-07 23:29:10 UTC
  • mto: (2154.2.1 drizzle-build)
  • mto: This revision was merged to the branch mainline in revision 2161.
  • Revision ID: brian@tangent.org-20110207232910-lpkg95qal61supfh
Move ha_data out.

Show diffs side-by-side

added added

removed removed

Lines of Context:
7
7
# Testing of NULL in a lot of different places
8
8
#
9
9
 
 
10
--error ER_DIVISION_BY_ZERO
10
11
select null,\N,isnull(null),isnull(1/0),isnull(1/0 = null),ifnull(null,1),ifnull(null,"TRUE"),ifnull("TRUE","ERROR"),1/0 is null,1 is not null;
 
12
--error ER_DIVISION_BY_ZERO
11
13
explain extended select null,\N,isnull(null),isnull(1/0),isnull(1/0 = null),ifnull(null,1),ifnull(null,"TRUE"),ifnull("TRUE","ERROR"),1/0 is null,1 is not null;
12
14
select CONCAT(1, NULL),1+NULL,1-NULL;
13
15
select NULL=NULL,NULL<>NULL,IFNULL(NULL,1.1)+0,CONCAT(IFNULL(NULL,1), 0);
65
67
 
66
68
# Test INSERT with NULL
67
69
 
68
 
--error 1048
 
70
--error ER_BAD_NULL_ERROR
69
71
INSERT INTO t1 (a) values (null);
70
 
--error 1048
 
72
--error ER_BAD_NULL_ERROR
71
73
INSERT INTO t1 (a) values (1/null);
72
 
--error 1048
 
74
--error ER_BAD_NULL_ERROR
73
75
INSERT INTO t1 (a) values (null),(null);
74
 
--error 1048
 
76
--error ER_BAD_NULL_ERROR
75
77
INSERT INTO t1 (b) values (null);
76
 
--error 1048
 
78
--error ER_BAD_NULL_ERROR
77
79
INSERT INTO t1 (b) values (1/null);
78
 
--error 1048
 
80
--error ER_BAD_NULL_ERROR
79
81
INSERT INTO t1 (b) values (null),(null);
80
 
--error 1048
 
82
--error ER_BAD_NULL_ERROR
81
83
INSERT INTO t1 (c) values (null);
82
 
--error 1048
 
84
--error ER_BAD_NULL_ERROR
83
85
INSERT INTO t1 (c) values (1/null);
84
 
--error 1048
 
86
--error ER_BAD_NULL_ERROR
85
87
INSERT INTO t1 (c) values (null),(null);
86
 
--error 1048
 
88
--error ER_BAD_NULL_ERROR
87
89
INSERT INTO t1 (d) values (null);
88
 
--error 1048
 
90
--error ER_BAD_NULL_ERROR
89
91
INSERT INTO t1 (d) values (1/null);
90
 
--error 1048
 
92
--error ER_BAD_NULL_ERROR
91
93
INSERT INTO t1 (d) values (null),(null);
92
94
 
93
95
# Test UPDATE with NULLs
99
101
# Insert a default row in order to test UPDATE to NULL error
100
102
INSERT INTO t1 VALUES ();
101
103
 
102
 
--error 1048
 
104
--error ER_BAD_NULL_ERROR
103
105
UPDATE t1 SET a=1/NULL;
104
 
--error 1048
 
106
--error ER_BAD_NULL_ERROR
105
107
UPDATE t1 SET a=NULL;
106
 
--error 1048
 
108
--error ER_BAD_NULL_ERROR
107
109
UPDATE t1 SET b=NULL;
108
 
--error 1048
 
110
--error ER_BAD_NULL_ERROR
109
111
UPDATE t1 SET c=NULL;
110
 
--error 1048
 
112
--error ER_BAD_NULL_ERROR
111
113
UPDATE t1 SET d=NULL;
112
114
 
113
115
truncate table t1;
117
119
# as 1048, only gives a "row" number.
118
120
# @TODO Is there really a reason for a separate error 
119
121
# just for LOAD DATA INFILE?
120
 
--error 1263
121
 
LOAD DATA INFILE '../std_data_ln/null_test.txt' INTO TABLE t1 FIELDS ENCLOSED BY '"';
 
122
--replace_result $DRIZZLETEST_VARDIR DRIZZLETEST_VARDIR
 
123
--error ER_WARN_NULL_TO_NOTNULL
 
124
eval LOAD DATA INFILE '$DRIZZLETEST_VARDIR/std_data_ln/null_test.txt' INTO TABLE t1 FIELDS ENCLOSED BY '"';
122
125
 
123
126
drop table t1;
124
127
 
233
236
#create table bug19145c (e enum('a','b','c') not null default 'b' , s set('x', 'y', 'z') not null default 'y' ) engine=MyISAM;
234
237
 
235
238
# Invalid default value for 's'
236
 
#--error 1067
 
239
#--error ER_INVALID_DEFAULT
237
240
#create table bug19145setnotnulldefaultnull (e enum('a','b','c')          default null, s set('x', 'y', 'z') not null default null) engine=MyISAM;
238
241
 
239
242
# Invalid default value for 'e'
240
 
#--error 1067
 
243
#--error ER_INVALID_DEFAULT
241
244
#create table bug19145enumnotnulldefaultnull (e enum('a','b','c') not null default null, s set('x', 'y', 'z')          default null) engine=MyISAM;
242
245
 
243
246
#alter table bug19145a alter column e set default null;
249
252
#alter table bug19145b add column (i int);
250
253
 
251
254
# Invalid default value for 'e'
252
 
#--error 1067
 
255
#--error ER_INVALID_DEFAULT
253
256
#alter table bug19145c alter column e set default null;
254
257
 
255
258
# Invalid default value for 's'
256
 
#--error 1067
 
259
#--error ER_INVALID_DEFAULT
257
260
#alter table bug19145c alter column s set default null;
258
261
#alter table bug19145c add column (i int);
259
262