~jlukas79/+junk/mysql-server

« back to all changes in this revision

Viewing changes to mysql-test/t/innodb-autoinc.test

manual merge 6.0-main --> 6.0-bka-review

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
-- source include/have_innodb.inc
 
2
# embedded server ignores 'delayed', so skip this
 
3
-- source include/not_embedded.inc
 
4
 
 
5
--disable_warnings
 
6
drop table if exists t1;
 
7
--enable_warnings
 
8
 
 
9
#
 
10
# Bug #34335
 
11
#
 
12
CREATE TABLE t1 (c1 BIGINT PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
 
13
INSERT INTO t1 VALUES (9223372036854775807, null);
 
14
-- error ER_DUP_ENTRY,1062
 
15
INSERT INTO t1 (c2) VALUES ('innodb');
 
16
SELECT * FROM t1;
 
17
DROP TABLE t1;
 
18
#
 
19
## Test AUTOINC overflow
 
20
##
 
21
 
 
22
# TINYINT
 
23
CREATE TABLE t1 (c1 TINYINT PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
 
24
INSERT INTO t1 VALUES (127, null);
 
25
-- error ER_DUP_ENTRY,1062
 
26
#-- warning ER_WARN_DATA_OUT_OF_RANGE,1264
 
27
INSERT INTO t1 (c2) VALUES ('innodb');
 
28
SELECT * FROM t1;
 
29
DROP TABLE t1;
 
30
 
 
31
CREATE TABLE t1 (c1 TINYINT UNSIGNED PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
 
32
INSERT INTO t1 VALUES (255, null);
 
33
-- error ER_DUP_ENTRY,1062
 
34
#-- warning ER_WARN_DATA_OUT_OF_RANGE,1264
 
35
INSERT INTO t1 (c2) VALUES ('innodb');
 
36
SELECT * FROM t1;
 
37
DROP TABLE t1;
 
38
#
 
39
# SMALLINT
 
40
#
 
41
CREATE TABLE t1 (c1 SMALLINT PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
 
42
INSERT INTO t1 VALUES (32767, null);
 
43
-- error ER_DUP_ENTRY,1062
 
44
#-- warning ER_WARN_DATA_OUT_OF_RANGE,1264
 
45
INSERT INTO t1 (c2) VALUES ('innodb');
 
46
SELECT * FROM t1;
 
47
DROP TABLE t1;
 
48
 
 
49
CREATE TABLE t1 (c1 SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
 
50
INSERT INTO t1 VALUES (65535, null);
 
51
-- error ER_DUP_ENTRY,1062
 
52
#-- warning ER_WARN_DATA_OUT_OF_RANGE,1264
 
53
INSERT INTO t1 (c2) VALUES ('innodb');
 
54
SELECT * FROM t1;
 
55
DROP TABLE t1;
 
56
#
 
57
# MEDIUMINT
 
58
#
 
59
CREATE TABLE t1 (c1 MEDIUMINT PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
 
60
INSERT INTO t1 VALUES (8388607, null);
 
61
-- error ER_DUP_ENTRY,1062
 
62
#-- warning ER_WARN_DATA_OUT_OF_RANGE,1264
 
63
INSERT INTO t1 (c2) VALUES ('innodb');
 
64
SELECT * FROM t1;
 
65
DROP TABLE t1;
 
66
 
 
67
CREATE TABLE t1 (c1 MEDIUMINT UNSIGNED PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
 
68
INSERT INTO t1 VALUES (16777215, null);
 
69
-- error ER_DUP_ENTRY,1062
 
70
#-- warning ER_WARN_DATA_OUT_OF_RANGE,1264
 
71
INSERT INTO t1 (c2) VALUES ('innodb');
 
72
SELECT * FROM t1;
 
73
DROP TABLE t1;
 
74
#
 
75
# INT
 
76
#
 
77
CREATE TABLE t1 (c1 INT PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
 
78
INSERT INTO t1 VALUES (2147483647, null);
 
79
-- error ER_DUP_ENTRY,1062
 
80
#-- warning ER_WARN_DATA_OUT_OF_RANGE,1264
 
81
INSERT INTO t1 (c2) VALUES ('innodb');
 
82
SELECT * FROM t1;
 
83
DROP TABLE t1;
 
84
 
 
85
CREATE TABLE t1 (c1 INT UNSIGNED PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
 
86
INSERT INTO t1 VALUES (4294967295, null);
 
87
-- error ER_DUP_ENTRY,1062
 
88
INSERT INTO t1 (c2) VALUES ('innodb');
 
89
SELECT * FROM t1;
 
90
DROP TABLE t1;
 
91
#
 
92
# BIGINT
 
93
#
 
94
CREATE TABLE t1 (c1 BIGINT PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
 
95
INSERT INTO t1 VALUES (9223372036854775807, null);
 
96
-- error ER_DUP_ENTRY,1062
 
97
#-- warning ER_WARN_DATA_OUT_OF_RANGE,1264
 
98
INSERT INTO t1 (c2) VALUES ('innodb');
 
99
SELECT * FROM t1;
 
100
DROP TABLE t1;
 
101
 
 
102
CREATE TABLE t1 (c1 BIGINT UNSIGNED PRIMARY KEY AUTO_INCREMENT, c2 VARCHAR(10)) ENGINE=InnoDB;
 
103
INSERT INTO t1 VALUES (18446744073709551615, null);
 
104
-- error ER_AUTOINC_READ_FAILED,1467
 
105
INSERT INTO t1 (c2) VALUES ('innodb');
 
106
SELECT * FROM t1;
 
107
DROP TABLE t1;