summaryrefslogtreecommitdiffstats
path: root/mysql-test/suite/csv/csv_not_null.result
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/suite/csv/csv_not_null.result')
-rw-r--r--mysql-test/suite/csv/csv_not_null.result57
1 files changed, 57 insertions, 0 deletions
diff --git a/mysql-test/suite/csv/csv_not_null.result b/mysql-test/suite/csv/csv_not_null.result
new file mode 100644
index 00000000..57ba0b72
--- /dev/null
+++ b/mysql-test/suite/csv/csv_not_null.result
@@ -0,0 +1,57 @@
+# ===== csv_not_null.1 =====
+DROP TABLE IF EXISTS t1, t2;
+# === Will fail -- no NOT NULL ===
+CREATE TABLE t1 (a int) ENGINE = CSV;
+ERROR 42000: The storage engine for the table doesn't support nullable columns
+# === Good CREATE ===
+CREATE TABLE t1 (a int NOT NULL) ENGINE = CSV;
+# === Will fail -- ALL columns need NOT NULL ==
+CREATE TABLE t2 (a int NOT NULL, b char(20)) ENGINE = CSV;
+ERROR 42000: The storage engine for the table doesn't support nullable columns
+DROP TABLE t1;
+# ===== csv_not_null.2 =====
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (a int NOT NULL, b blob NOT NULL, c CHAR(20) NOT NULL,
+d VARCHAR(20) NOT NULL, e enum('foo','bar') NOT NULL,f DATE NOT NULL)
+ENGINE = CSV;
+# === should result in default for each datatype ===
+INSERT IGNORE INTO t1 VALUES();
+SELECT * FROM t1;
+a b c d e f
+0 foo 0000-00-00
+INSERT IGNORE INTO t1 VALUES(default,default,default,default,default,default);
+SELECT * FROM t1;
+a b c d e f
+0 foo 0000-00-00
+0 foo 0000-00-00
+INSERT INTO t1 VALUES(0,'abc','def','ghi','bar','1999-12-31');
+SELECT * FROM t1;
+a b c d e f
+0 foo 0000-00-00
+0 foo 0000-00-00
+0 abc def ghi bar 1999-12-31
+# === insert failures ===
+INSERT INTO t1 VALUES(NULL,'ab','a','b','foo','2007-01-01');
+ERROR 23000: Column 'a' cannot be null
+INSERT INTO t1 VALUES(default(a),default(b), default(c), default(d),
+default(e), default(f));
+ERROR HY000: Field 'a' doesn't have a default value
+DROP TABLE t1;
+# ===== csv_not_null.3 =====
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (a int NOT NULL, b char(10) NOT NULL) ENGINE = CSV;
+INSERT IGNORE INTO t1 VALUES();
+SELECT * FROM t1;
+a b
+0
+UPDATE t1 set b = 'new_value' where a = 0;
+SELECT * FROM t1;
+a b
+0 new_value
+UPDATE IGNORE t1 set b = NULL where b = 'new_value';
+Warnings:
+Warning 1048 Column 'b' cannot be null
+SELECT * FROM t1;
+a b
+0
+DROP TABLE t1;