summaryrefslogtreecommitdiff
path: root/mysql-test/suite/sys_vars/t/insert_id_func.test
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/suite/sys_vars/t/insert_id_func.test')
-rw-r--r--mysql-test/suite/sys_vars/t/insert_id_func.test113
1 files changed, 113 insertions, 0 deletions
diff --git a/mysql-test/suite/sys_vars/t/insert_id_func.test b/mysql-test/suite/sys_vars/t/insert_id_func.test
new file mode 100644
index 00000000000..d7103f806bd
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/insert_id_func.test
@@ -0,0 +1,113 @@
+################### 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 #
+##########################################################
+
+--echo ## Creating & Connecting new connection test_con1 ##
+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 #
+#############################################################################
+
+--echo ## Creating and switching to new connection test_con2 ##
+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;
+
+--echo ## Disconnecting connections ##
+disconnect test_con1;
+disconnect test_con2;
+
+
+
+
+