1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
|
#-----------------------------------------------------------------------------
# csv_alter_table.test - .test file for MySQL regression suite
# Purpose: To test the behavior of the CSV engine
# Bug#31473 resulted in strict enforcement of non-nullable
# columns in CSV engine.
# Tests code for Bug#33696 - CSV engine allows NULLable
# Columns via ALTER TABLE statements
#
# Author pcrews
# Last modified: 2008-01-06
#-----------------------------------------------------------------------------
--source include/have_csv.inc
#############################################################################
# Testcase csv_alter_table.1: Positive test for ALTER table
#
#############################################################################
-- echo # ===== csv_alter_table.1 =====
-- disable_warnings
DROP TABLE IF EXISTS t1;
-- enable_warnings
CREATE TABLE t1 (a int NOT NULL) ENGINE = CSV;
ALTER TABLE t1 ADD COLUMN b CHAR(5) NOT NULL;
DESC t1;
ALTER TABLE t1 DROP COLUMN b;
DESC t1;
ALTER TABLE t1 MODIFY a BIGINT NOT NULL;
DESC t1;
ALTER TABLE t1 CHANGE a a INT NOT NULL;
DESC t1;
DROP TABLE t1;
#############################################################################
# Testcase csv_alter_table.2: Negative test for ALTER table
# These queries should not succeed / should throw errors
#############################################################################
-- echo # ===== csv_alter_table.2 =====
-- disable_warnings
DROP TABLE IF EXISTS t1;
-- enable_warnings
CREATE TABLE t1 (a int NOT NULL) ENGINE = CSV;
--error ER_CHECK_NOT_IMPLEMENTED
ALTER TABLE t1 ADD COLUMN b CHAR(5);
DESC t1;
--error ER_CHECK_NOT_IMPLEMENTED
ALTER TABLE t1 MODIFY a BIGINT;
DESC t1;
--error ER_CHECK_NOT_IMPLEMENTED
ALTER TABLE t1 CHANGE a a INT;
DESC t1;
DROP TABLE t1;
|