mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
MDEV-15352 AUTO_INCREMENT breaks after updating a column value to a negative number
This commit is contained in:
29
mysql-test/include/autoinc_mdev15353.inc
Normal file
29
mysql-test/include/autoinc_mdev15353.inc
Normal file
@@ -0,0 +1,29 @@
|
||||
DELIMITER $$;
|
||||
CREATE PROCEDURE autoinc_mdev15353_one(engine VARCHAR(64), t VARCHAR(64))
|
||||
BEGIN
|
||||
DECLARE query TEXT DEFAULT 'CREATE TABLE t1 ('
|
||||
' id TTT NOT NULL AUTO_INCREMENT,'
|
||||
' name CHAR(30) NOT NULL,'
|
||||
' PRIMARY KEY (id)) ENGINE=EEE';
|
||||
EXECUTE IMMEDIATE REPLACE(REPLACE(query,'TTT', t), 'EEE', engine);
|
||||
SHOW CREATE TABLE t1;
|
||||
INSERT INTO t1 (name) VALUES ('dog');
|
||||
SELECT * FROM t1;
|
||||
UPDATE t1 SET id=-1 WHERE id=1;
|
||||
SELECT * FROM t1;
|
||||
INSERT INTO t1 (name) VALUES ('cat');
|
||||
SELECT * FROM t1;
|
||||
DROP TABLE t1;
|
||||
END;
|
||||
$$
|
||||
DELIMITER ;$$
|
||||
|
||||
CALL autoinc_mdev15353_one(@engine, 'tinyint');
|
||||
CALL autoinc_mdev15353_one(@engine, 'smallint');
|
||||
CALL autoinc_mdev15353_one(@engine, 'mediumint');
|
||||
CALL autoinc_mdev15353_one(@engine, 'int');
|
||||
CALL autoinc_mdev15353_one(@engine, 'bigint');
|
||||
CALL autoinc_mdev15353_one(@engine, 'float');
|
||||
CALL autoinc_mdev15353_one(@engine, 'double');
|
||||
|
||||
DROP PROCEDURE autoinc_mdev15353_one;
|
Reference in New Issue
Block a user