mariadb/mysql-test/suite/parts/r/partition_exch_qa_10.result
2016-10-05 01:11:08 +03:00

70 lines
1.7 KiB
Text

use test;
CREATE PROCEDURE test_p1 ()
BEGIN
ALTER TABLE t_10 ADD UNIQUE INDEX USING BTREE (a);
ALTER TABLE tp ADD UNIQUE INDEX USING BTREE (a);
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
ALTER TABLE tp DROP INDEX a;
ALTER TABLE t_10 DROP INDEX a;
END|
CALL test_p1;
SELECT * FROM t_10;
a b
2 Two
4 Four
6 Six
8 Eight
SELECT * FROM tp WHERE a BETWEEN 0 AND 9;
a b
1 One
3 Three
5 Five
9 Nine
DROP PROCEDURE test_p1;
SET @save_autocommit= @@autocommit;
SET @@autocommit= OFF;
SHOW VARIABLES LIKE 'autocommit%';
Variable_name Value
autocommit OFF
CREATE TRIGGER test_trg_1 BEFORE UPDATE ON tp FOR EACH ROW
BEGIN
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
END|
ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger
CREATE FUNCTION test_f_1() RETURNS int
BEGIN
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
END|
ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger
SET @@autocommit= @save_autocommit;
SET @save_event_scheduler= @@global.event_scheduler;
SET @@global.event_scheduler= ON;
CREATE EVENT test_ev_1
ON SCHEDULE AT CURRENT_TIMESTAMP
DO
ALTER TABLE tp EXCHANGE PARTITION p0 WITH TABLE t_10;
SELECT * FROM t_10;
a b
1 One
3 Three
5 Five
9 Nine
SELECT * FROM tp WHERE a BETWEEN 0 AND 9;
a b
2 Two
4 Four
6 Six
8 Eight
SET @@global.event_scheduler= @save_event_scheduler;
DROP TABLE IF EXISTS t_10;
DROP TABLE IF EXISTS t_100;
DROP TABLE IF EXISTS t_1000;
DROP TABLE IF EXISTS tp;
DROP TABLE IF EXISTS tsp;
DROP TABLE IF EXISTS tsp_00;
DROP TABLE IF EXISTS tsp_01;
DROP TABLE IF EXISTS tsp_02;
DROP TABLE IF EXISTS tsp_03;
DROP TABLE IF EXISTS tsp_04;
DROP TABLE IF EXISTS t_empty;
DROP TABLE IF EXISTS t_null;