167 lines
2.4 KiB
Plaintext
167 lines
2.4 KiB
Plaintext
DROP TABLE IF EXISTS t1,t2;
|
|
CREATE TABLE t1 (a INT, b CHAR(8), pk INT AUTO_INCREMENT PRIMARY KEY) ENGINE=xengine;
|
|
INSERT INTO t1 (a,b) VALUES (10000,'foobar'),(1,'a'),(2,'b'),(3,'c'),(4,'d'),(5,'e');
|
|
INSERT INTO t1 (a,b) SELECT a, b FROM t1;
|
|
DELETE FROM t1 WHERE b IN ('c');
|
|
SELECT a,b FROM t1;
|
|
a b
|
|
1 a
|
|
1 a
|
|
10000 foobar
|
|
10000 foobar
|
|
2 b
|
|
2 b
|
|
4 d
|
|
4 d
|
|
5 e
|
|
5 e
|
|
DELETE FROM t1 WHERE a < 0 OR b = 'a';
|
|
SELECT a,b FROM t1;
|
|
a b
|
|
10000 foobar
|
|
10000 foobar
|
|
2 b
|
|
2 b
|
|
4 d
|
|
4 d
|
|
5 e
|
|
5 e
|
|
DELETE FROM t1 WHERE a <= 4 ORDER BY b DESC LIMIT 1;
|
|
SELECT a,b FROM t1;
|
|
a b
|
|
10000 foobar
|
|
10000 foobar
|
|
2 b
|
|
2 b
|
|
4 d
|
|
5 e
|
|
5 e
|
|
CREATE TABLE t2 (c CHAR(8), d INT, pk INT AUTO_INCREMENT PRIMARY KEY) ENGINE=xengine;
|
|
INSERT INTO t2 (c,d) SELECT b, a FROM t1;
|
|
SELECT c,d FROM t2;
|
|
c d
|
|
b 2
|
|
b 2
|
|
d 4
|
|
e 5
|
|
e 5
|
|
foobar 10000
|
|
foobar 10000
|
|
DELETE t2.* FROM t1, t2 WHERE c < b AND a + d != 1;
|
|
SELECT a,b FROM t1;
|
|
a b
|
|
10000 foobar
|
|
10000 foobar
|
|
2 b
|
|
2 b
|
|
4 d
|
|
5 e
|
|
5 e
|
|
SELECT c,d FROM t2;
|
|
c d
|
|
foobar 10000
|
|
foobar 10000
|
|
DELETE FROM t2, t1.* USING t2, t1 WHERE c = 'foobar' and b = c;
|
|
SELECT a,b FROM t1;
|
|
a b
|
|
2 b
|
|
2 b
|
|
4 d
|
|
5 e
|
|
5 e
|
|
SELECT c,d FROM t2;
|
|
c d
|
|
DELETE FROM t1;
|
|
SELECT a,b FROM t1;
|
|
a b
|
|
DROP TABLE t1, t2;
|
|
CREATE TABLE t1 (a INT, b CHAR(8), pk INT AUTO_INCREMENT PRIMARY KEY) ENGINE=xengine;
|
|
INSERT INTO t1 (a,b) VALUES (1,'a'),(2,'b'),(3,'c'),(4,'d'),(5,'e'),(6,'f'),(7,'g'),(8,'h'),(10000,'foobar');
|
|
INSERT INTO t1 (a,b) SELECT a, b FROM t1;
|
|
BEGIN;
|
|
DELETE FROM t1 WHERE b IN ('c');
|
|
SELECT a,b FROM t1;
|
|
a b
|
|
1 a
|
|
1 a
|
|
10000 foobar
|
|
10000 foobar
|
|
2 b
|
|
2 b
|
|
4 d
|
|
4 d
|
|
5 e
|
|
5 e
|
|
6 f
|
|
6 f
|
|
7 g
|
|
7 g
|
|
8 h
|
|
8 h
|
|
DELETE FROM t1 WHERE a < 0 OR b = 'a';
|
|
COMMIT;
|
|
SELECT a,b FROM t1;
|
|
a b
|
|
10000 foobar
|
|
10000 foobar
|
|
2 b
|
|
2 b
|
|
4 d
|
|
4 d
|
|
5 e
|
|
5 e
|
|
6 f
|
|
6 f
|
|
7 g
|
|
7 g
|
|
8 h
|
|
8 h
|
|
BEGIN;
|
|
DELETE FROM t1 WHERE a <= 4 ORDER BY b DESC LIMIT 1;
|
|
SAVEPOINT spt1;
|
|
DELETE FROM t1;
|
|
RELEASE SAVEPOINT spt1;
|
|
ROLLBACK;
|
|
SELECT a,b FROM t1;
|
|
a b
|
|
10000 foobar
|
|
10000 foobar
|
|
2 b
|
|
2 b
|
|
4 d
|
|
4 d
|
|
5 e
|
|
5 e
|
|
6 f
|
|
6 f
|
|
7 g
|
|
7 g
|
|
8 h
|
|
8 h
|
|
BEGIN;
|
|
DELETE FROM t1 WHERE a <= 4 ORDER BY b DESC LIMIT 1;
|
|
SAVEPOINT spt1;
|
|
DELETE FROM t1;
|
|
INSERT INTO t1 (a,b) VALUES (1,'a');
|
|
ROLLBACK TO SAVEPOINT spt1;
|
|
ERROR HY000: XEngine currently does not support ROLLBACK TO SAVEPOINT if modifying rows.
|
|
COMMIT;
|
|
ERROR HY000: This transaction was rolled back and cannot be committed. Only supported operation is to roll it back, so all pending changes will be discarded. Please restart another transaction.
|
|
SELECT a,b FROM t1;
|
|
a b
|
|
10000 foobar
|
|
10000 foobar
|
|
2 b
|
|
2 b
|
|
4 d
|
|
4 d
|
|
5 e
|
|
5 e
|
|
6 f
|
|
6 f
|
|
7 g
|
|
7 g
|
|
8 h
|
|
8 h
|
|
DROP TABLE t1;
|