polardbxengine/mysql-test/suite/xengine/r/allow_no_primary_key.result

270 lines
5.7 KiB
Plaintext

DROP TABLE IF EXISTS t1;
CREATE TABLE t1 (a INT, b CHAR(8)) ENGINE=xengine;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL,
`b` char(8) COLLATE utf8mb4_general_ci DEFAULT NULL
) ENGINE=XENGINE DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci
SHOW COLUMNS IN t1;
Field Type Null Key Default Extra
a int(11) YES NULL
b char(8) YES NULL
INSERT INTO t1 (a,b) VALUES (76,'bar');
INSERT INTO t1 (a,b) VALUES (35,'foo');
INSERT INTO t1 (a,b) VALUES (77,'baz');
SELECT * FROM t1 WHERE a = 35;
a b
35 foo
SELECT * FROM t1 WHERE a = 35 AND b = 'foo';
a b
35 foo
SELECT * FROM t1 WHERE a = 77 OR b = 'bar';
a b
76 bar
77 baz
SELECT * FROM t1 WHERE a > 35;
a b
76 bar
77 baz
SELECT * FROM t1;
a b
35 foo
76 bar
77 baz
UPDATE t1 SET a=a+100;
SELECT * FROM t1;
a b
135 foo
176 bar
177 baz
UPDATE t1 SET a=a-100, b='bbb' WHERE a>100;
SELECT * FROM t1;
a b
35 bbb
76 bbb
77 bbb
UPDATE t1 SET a=300, b='ccc' WHERE a>70;
SELECT * FROM t1;
a b
300 ccc
300 ccc
35 bbb
UPDATE t1 SET a=123 WHERE a=35;
SELECT * FROM t1;
a b
123 bbb
300 ccc
300 ccc
UPDATE t1 SET a=321 WHERE b='ccc';
SELECT * FROM t1;
a b
123 bbb
321 ccc
321 ccc
# restart
INSERT INTO t1 (a,b) VALUES (45,'bob');
SELECT * FROM t1;
a b
123 bbb
321 ccc
321 ccc
45 bob
DELETE FROM t1 WHERE a=123;
SELECT * FROM t1;
a b
321 ccc
321 ccc
45 bob
DELETE FROM t1 WHERE b > 'bbb' AND a > 100;
SELECT * FROM t1;
a b
45 bob
TRUNCATE TABLE t1;
DROP TABLE t1;
CREATE TABLE t1 (a INT, c CHAR(8)) ENGINE=xengine;
INSERT INTO t1 VALUES (1,'a'),(5,'z');
ALTER TABLE t1 ADD COLUMN b INT;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL,
`c` char(8) COLLATE utf8mb4_general_ci DEFAULT NULL,
`b` int(11) DEFAULT NULL
) ENGINE=XENGINE DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci
SELECT * FROM t1;
a c b
1 a NULL
5 z NULL
ALTER TABLE t1 DROP COLUMN b;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL,
`c` char(8) COLLATE utf8mb4_general_ci DEFAULT NULL
) ENGINE=XENGINE DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci
SELECT * FROM t1;
a c
1 a
5 z
DROP TABLE t1;
CREATE TABLE t1 (a INT, b CHAR(8), pk INT AUTO_INCREMENT PRIMARY KEY) ENGINE=xengine;
ALTER TABLE t1 DROP COLUMN pk;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL,
`b` char(8) COLLATE utf8mb4_general_ci DEFAULT NULL
) ENGINE=XENGINE DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci
SHOW COLUMNS IN t1;
Field Type Null Key Default Extra
a int(11) YES NULL
b char(8) YES NULL
INSERT INTO t1 (a,b) VALUES (76,'bar');
INSERT INTO t1 (a,b) VALUES (35,'foo');
INSERT INTO t1 (a,b) VALUES (77,'baz');
SELECT * FROM t1 WHERE a = 35;
a b
35 foo
SELECT * FROM t1 WHERE a = 35 AND b = 'foo';
a b
35 foo
SELECT * FROM t1 WHERE a = 77 OR b = 'bar';
a b
76 bar
77 baz
SELECT * FROM t1 WHERE a > 35;
a b
76 bar
77 baz
SELECT * FROM t1;
a b
35 foo
76 bar
77 baz
UPDATE t1 SET a=a+100;
SELECT * FROM t1;
a b
135 foo
176 bar
177 baz
UPDATE t1 SET a=a-100, b='bbb' WHERE a>100;
SELECT * FROM t1;
a b
35 bbb
76 bbb
77 bbb
UPDATE t1 SET a=300, b='ccc' WHERE a>70;
SELECT * FROM t1;
a b
300 ccc
300 ccc
35 bbb
UPDATE t1 SET a=123 WHERE a=35;
SELECT * FROM t1;
a b
123 bbb
300 ccc
300 ccc
UPDATE t1 SET a=321 WHERE b='ccc';
SELECT * FROM t1;
a b
123 bbb
321 ccc
321 ccc
# restart
INSERT INTO t1 (a,b) VALUES (45,'bob');
SELECT * FROM t1;
a b
123 bbb
321 ccc
321 ccc
45 bob
DELETE FROM t1 WHERE a=123;
SELECT * FROM t1;
a b
321 ccc
321 ccc
45 bob
DELETE FROM t1 WHERE b > 'bbb' AND a > 100;
SELECT * FROM t1;
a b
45 bob
TRUNCATE TABLE t1;
DROP TABLE t1;
DROP TABLE IF EXISTS t1,t2;
CREATE TABLE t1 (a INT, b CHAR(8)) ENGINE=xengine;
INSERT INTO t1 (a,b) VALUES (1,'a'),(2,'b');
CREATE TABLE t2 (a INT, b CHAR(8)) ENGINE=xengine;
CHECK TABLE t1;
Table Op Msg_type Msg_text
test.t1 check status OK
INSERT INTO t1 (a,b) VALUES (3,'c');
INSERT INTO t2 (a,b) VALUES (4,'d');
CHECK TABLE t1, t2 FOR UPGRADE;
Table Op Msg_type Msg_text
test.t1 check status OK
test.t2 check status OK
INSERT INTO t2 (a,b) VALUES (5,'e');
CHECK TABLE t2 QUICK;
Table Op Msg_type Msg_text
test.t2 check status OK
INSERT INTO t1 (a,b) VALUES (6,'f');
CHECK TABLE t1 FAST;
Table Op Msg_type Msg_text
test.t1 check status OK
INSERT INTO t1 (a,b) VALUES (7,'g');
INSERT INTO t2 (a,b) VALUES (8,'h');
CHECK TABLE t2, t1 MEDIUM;
Table Op Msg_type Msg_text
test.t2 check status OK
test.t1 check status OK
INSERT INTO t1 (a,b) VALUES (9,'i');
INSERT INTO t2 (a,b) VALUES (10,'j');
CHECK TABLE t1, t2 EXTENDED;
Table Op Msg_type Msg_text
test.t1 check status OK
test.t2 check status OK
INSERT INTO t1 (a,b) VALUES (11,'k');
CHECK TABLE t1 CHANGED;
Table Op Msg_type Msg_text
test.t1 check status OK
DROP TABLE t1, t2;
CREATE TABLE t1 (a INT, b CHAR(8), UNIQUE INDEX(a)) ENGINE=XENGINE;
INSERT INTO t1 (a,b) VALUES (1,'a'),(2,'b');
INSERT INTO t1 (a,b) VALUES (1,'c');
ERROR 23000: Duplicate entry '1' for key 'a'
SELECT * FROM t1;
a b
1 a
2 b
SELECT * FROM t1 WHERE a = 2;
a b
2 b
EXPLAIN SELECT * FROM t1 WHERE a = 2;
id select_type table partitions type possible_keys key key_len ref rows filtered Extra
1 SIMPLE t1 NULL const a a 5 const 1 100.00 NULL
Warnings:
Note 1003 /* select#1 */ select '2' AS `a`,'b' AS `b` from `test`.`t1` where true
DROP TABLE t1;
CREATE TABLE t1 (a INT, b CHAR(8)) ENGINE=xengine;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL,
`b` char(8) COLLATE utf8mb4_general_ci DEFAULT NULL
) ENGINE=XENGINE DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci
SHOW COLUMNS IN t1;
Field Type Null Key Default Extra
a int(11) YES NULL
b char(8) YES NULL
# restart
INSERT INTO t1 (a,b) VALUES (35,'foo');
INSERT INTO t1 (a,b) VALUES (35,'foo');
INSERT INTO t1 (a,b) VALUES (36,'foo');
DELETE FROM t1 WHERE a = 35 AND b = 'foo';
SELECT * FROM t1;
a b
36 foo
DROP TABLE t1;