summaryrefslogtreecommitdiffstats
path: root/mysql-test/suite/csv/csv_alter_table.test
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/suite/csv/csv_alter_table.test')
-rw-r--r--mysql-test/suite/csv/csv_alter_table.test56
1 files changed, 56 insertions, 0 deletions
diff --git a/mysql-test/suite/csv/csv_alter_table.test b/mysql-test/suite/csv/csv_alter_table.test
new file mode 100644
index 00000000..0093a1d1
--- /dev/null
+++ b/mysql-test/suite/csv/csv_alter_table.test
@@ -0,0 +1,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;