mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 12:02:42 +01:00
BUG#32817 - though CSV is marked as supported create table is rejected
with error 1005. CSV doesn't support nullable fields. Report descriptive error if create table with nullable field is requested. mysql-test/r/csv.result: A test case for BUG#32817. mysql-test/t/csv.test: A test case for BUG#32817. storage/csv/ha_tina.cc: CSV doesn't support nullable fields. Report descriptive error if create table with nullable field is requested.
This commit is contained in:
parent
b9ecec8622
commit
0fdc16bd13
3 changed files with 21 additions and 5 deletions
|
@ -5364,13 +5364,19 @@ BIN(a)
|
|||
0
|
||||
drop table t1;
|
||||
create table t1(a enum('foo','bar') default null) engine=csv;
|
||||
ERROR HY000: Can't create table 'test.t1' (errno: -1)
|
||||
ERROR 42000: The storage engine for the table doesn't support nullable columns
|
||||
create table t1(a enum('foo','bar') default 'foo') engine=csv;
|
||||
ERROR HY000: Can't create table 'test.t1' (errno: -1)
|
||||
ERROR 42000: The storage engine for the table doesn't support nullable columns
|
||||
create table t1(a enum('foo','bar') default 'foo' not null) engine=csv;
|
||||
insert into t1 values();
|
||||
select * from t1;
|
||||
a
|
||||
foo
|
||||
drop table t1;
|
||||
CREATE TABLE t1(a INT) ENGINE=CSV;
|
||||
ERROR 42000: The storage engine for the table doesn't support nullable columns
|
||||
SHOW WARNINGS;
|
||||
Level Code Message
|
||||
Error 1178 The storage engine for the table doesn't support nullable columns
|
||||
Error 1005 Can't create table 'test.t1' (errno: 138)
|
||||
End of 5.1 tests
|
||||
|
|
|
@ -1755,9 +1755,9 @@ insert into t1 values();
|
|||
select BIN(a) from t1;
|
||||
drop table t1;
|
||||
# We prevent creation of table with nullable ENUM
|
||||
--error ER_CANT_CREATE_TABLE
|
||||
--error ER_CHECK_NOT_IMPLEMENTED
|
||||
create table t1(a enum('foo','bar') default null) engine=csv;
|
||||
--error ER_CANT_CREATE_TABLE
|
||||
--error ER_CHECK_NOT_IMPLEMENTED
|
||||
create table t1(a enum('foo','bar') default 'foo') engine=csv;
|
||||
# Enum columns must be specified as NOT NULL
|
||||
create table t1(a enum('foo','bar') default 'foo' not null) engine=csv;
|
||||
|
@ -1765,5 +1765,12 @@ insert into t1 values();
|
|||
select * from t1;
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# BUG#32817 - though CSV is marked as supported create table is rejected
|
||||
# with error 1005.
|
||||
#
|
||||
--error ER_CHECK_NOT_IMPLEMENTED
|
||||
CREATE TABLE t1(a INT) ENGINE=CSV;
|
||||
SHOW WARNINGS;
|
||||
|
||||
--echo End of 5.1 tests
|
||||
|
|
|
@ -1486,7 +1486,10 @@ int ha_tina::create(const char *name, TABLE *table_arg,
|
|||
for (Field **field= table_arg->s->field; *field; field++)
|
||||
{
|
||||
if ((*field)->real_maybe_null())
|
||||
DBUG_RETURN(-1);
|
||||
{
|
||||
my_error(ER_CHECK_NOT_IMPLEMENTED, MYF(0), "nullable columns");
|
||||
DBUG_RETURN(HA_ERR_UNSUPPORTED);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue