95 lines
2.9 KiB
Plaintext
95 lines
2.9 KiB
Plaintext
--source suite/xengine/include/have_xengine.inc
|
|
|
|
#
|
|
# INSERT statements for tables with keys
|
|
#
|
|
|
|
##################################################
|
|
# TODO:
|
|
# A part of the test is disabled because currently
|
|
# unique indexes are not supported
|
|
##################################################
|
|
|
|
--disable_warnings
|
|
DROP TABLE IF EXISTS t1;
|
|
--enable_warnings
|
|
|
|
CREATE TABLE t1 (a INT, b CHAR(8), pk INT AUTO_INCREMENT PRIMARY KEY, KEY(b)) ENGINE=xengine;
|
|
INSERT INTO t1 (a,b) VALUES (1,'a'),(2,'b'),(3,'c'),(4,'d'),(5,'e');
|
|
INSERT INTO t1 (a,b) VALUES (100,'a'), (6,'f');
|
|
INSERT INTO t1 (a,b) VALUES (30,'m'),(29,'n');
|
|
INSERT INTO t1 (a,b) VALUES (1,'a'),(12345,'z');
|
|
INSERT INTO t1 (a,b) VALUES (3,'a'),(0,'');
|
|
--sorted_result
|
|
SELECT a,b FROM t1;
|
|
DROP TABLE t1;
|
|
|
|
--echo #----------------------------------------
|
|
--echo # UNIQUE KEYS are not supported currently
|
|
--echo #-----------------------------------------
|
|
|
|
--disable_testcase BUG#0
|
|
|
|
CREATE TABLE t1 (a INT, b CHAR(8), pk INT AUTO_INCREMENT PRIMARY KEY, UNIQUE INDEX(a)) ENGINE=xengine;
|
|
INSERT INTO t1 (a,b) VALUES (1,'a'),(2,'b'),(3,'c'),(4,'d'),(5,'e');
|
|
INSERT INTO t1 (a,b) VALUES (100,'a'), (6,'f');
|
|
INSERT INTO t1 (a,b) VALUES (30,'m'),(29,'n');
|
|
--error ER_DUP_ENTRY
|
|
INSERT INTO t1 (a,b) VALUES (1,'a'),(12345,'z');
|
|
--error ER_DUP_ENTRY
|
|
INSERT INTO t1 (a,b) VALUES (3,'a'),(0,'');
|
|
INSERT INTO t1 (a,b) VALUES (0,'');
|
|
--sorted_result
|
|
SELECT a,b FROM t1;
|
|
|
|
INSERT IGNORE INTO t1 (a,b) VALUES (1,'a'),(12345,'z');
|
|
INSERT INTO t1 (a,b) VALUES (3,'a'),(4,'d') ON DUPLICATE KEY UPDATE a = a+10;
|
|
|
|
--sorted_result
|
|
SELECT a,b FROM t1;
|
|
|
|
DROP TABLE t1;
|
|
|
|
CREATE TABLE t1 (a INT, b CHAR(8), pk INT AUTO_INCREMENT PRIMARY KEY, UNIQUE INDEX(a,b)) ENGINE=xengine;
|
|
INSERT INTO t1 (a,b) VALUES (1,'a'),(2,'b'),(3,'c'),(4,'d'),(5,'e');
|
|
INSERT INTO t1 (a,b) VALUES (100,'a'), (6,'f');
|
|
INSERT INTO t1 (a,b) VALUES (30,'m'),(29,'n');
|
|
INSERT INTO t1 (a,b) VALUES (100,'b'), (2,'c');
|
|
--error ER_DUP_ENTRY
|
|
INSERT INTO t1 (a,b) VALUES (1,'a'),(12345,'z');
|
|
--sorted_result
|
|
SELECT a,b FROM t1;
|
|
|
|
INSERT IGNORE INTO t1 (a,b) VALUES (1,'a'),(12345,'z');
|
|
INSERT INTO t1 (a,b) VALUES (1,'a'),(12345,'z') ON DUPLICATE KEY UPDATE a = a+VALUES(a);
|
|
--sorted_result
|
|
SELECT a,b FROM t1;
|
|
|
|
--error ER_DUP_ENTRY
|
|
INSERT INTO t1 (a,b) VALUES (101,'x'),(101,'x');
|
|
DROP TABLE t1;
|
|
|
|
--enable_testcase
|
|
|
|
|
|
CREATE TABLE t1 (a INT PRIMARY KEY, b CHAR(8)) ENGINE=xengine;
|
|
INSERT INTO t1 (a,b) VALUES (1,'a'),(2,'b'),(3,'c'),(4,'d'),(5,'e');
|
|
INSERT INTO t1 (a,b) VALUES (100,'a'), (6,'f');
|
|
INSERT INTO t1 (a,b) VALUES (30,'m'),(29,'n');
|
|
--error ER_DUP_ENTRY
|
|
INSERT INTO t1 (a,b) VALUES (1,'a'),(12345,'z');
|
|
--error ER_DUP_ENTRY
|
|
INSERT INTO t1 (a,b) VALUES (3,'a'),(0,'');
|
|
INSERT INTO t1 (a,b) VALUES (0,'');
|
|
--sorted_result
|
|
SELECT a,b FROM t1;
|
|
|
|
INSERT IGNORE INTO t1 (a,b) VALUES (1,'a'),(12345,'z');
|
|
INSERT INTO t1 (a,b) VALUES (1,'a'),(12345,'z') ON DUPLICATE KEY UPDATE b = CONCAT(b,b);
|
|
--sorted_result
|
|
SELECT a,b FROM t1;
|
|
|
|
DROP TABLE t1;
|
|
|
|
--source suite/xengine/include/check_xengine_log_error.inc
|