################### mysql-test\t\insert_id_func.test ########################## # # # Variable Name: insert_id # # Scope: SESSION # # Access Type: Dynamic # # Data Type: numeric # # Default Value:- # # Range: - # # # # # # Creation Date: 2008-03-07 # # Author: Salman Rawala # # # # Description: Test Cases of Dynamic System Variable insert_id # # that checks the functionality of this variable # # # # Reference: http://dev.mysql.com/doc/refman/5.1/en/ # # server-system-variables.html # # # ############################################################################### --disable_warnings drop table if exists t1; --enable_warnings ######################### # Creating new table # ######################### --echo ## Creating new table t1 ## CREATE TABLE t1 ( id INT NOT NULL auto_increment, PRIMARY KEY (id), name VARCHAR(30) ); --echo '#--------------------FN_DYNVARS_051_01-------------------------#' ####################################################################### # Setting initial value of insert_id and verifying its behavior # ####################################################################### --echo ## Setting value of variable to 100 ## SET @@session.insert_id = 100; SELECT @@session.insert_id; --echo ## Inserting some rows in table ## INSERT into t1(name) values('Record_1'); INSERT into t1(name) values('Record_2'); --echo ## Verifying rows in table ## SELECT * from t1; SELECT @@session.insert_id; INSERT into t1(name) values('Record_3'); --echo '#--------------------FN_DYNVARS_051_02-------------------------#' ########################################################## # Verifying value of insert_id with new connection # ########################################################## connect (test_con1, localhost, root,,); connection test_con1; --echo ## Setting value of insert_id to 50 ## SET @@session.insert_id = 50; SELECT @@session.insert_id; --echo ## Inserting rows in table t1 ## INSERT into t1(name) values('Record_4'); INSERT into t1(name) values('Record_5'); INSERT into t1(name) values('Record_6'); SELECT * from t1; --echo 'Bug#35376 Value of insert_id automatically resets to 0 after inserting --echo ' 1st row' --echo '#--------------------FN_DYNVARS_051_03-------------------------#' ############################################################################# # Now verifying some new value of insert_id with second new connection # ############################################################################# connect (test_con2, localhost, root,,); connection test_con2; --echo ## Setting session value of variable to 25 ## SET @@session.insert_id = 25; --echo ## Inserting some rows in table ## INSERT into t1(name) values('Record_7'); INSERT into t1(name) values('Record_8'); --echo ## Verifying data in table t1 ## SELECT * from t1; --echo ## Dropping table t1 ## drop table t1; disconnect test_con1; disconnect test_con2; # MDEV-22711 Assertion `nr != 0' failed in handler::update_auto_increment. # connection default; CREATE TABLE t1(id int primary key auto_increment); SET SESSION insert_id=123; SET SESSION insert_id=0; INSERT INTO t1 VALUES (); SET SESSION insert_id=123; SET SESSION insert_id=default; INSERT INTO t1 VALUES (); SET SESSION insert_id=123; SET SESSION insert_id=-1; INSERT INTO t1 VALUES (); SET SESSION insert_id=123; SET SESSION insert_id=-10; INSERT INTO t1 VALUES (); SELECT * FROM t1; DROP TABLE t1;