mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Merge neptunus.(none):/home/msvensson/mysql/tmp/tmp_merge
into neptunus.(none):/home/msvensson/mysql/mysql-5.1
This commit is contained in:
@ -2,7 +2,7 @@ drop table if exists t1;
|
||||
set sql_mode="MySQL40";
|
||||
select @@sql_mode;
|
||||
@@sql_mode
|
||||
NO_FIELD_OPTIONS,MYSQL40,HIGH_NOT_PRECEDENCE
|
||||
MYSQL40,HIGH_NOT_PRECEDENCE
|
||||
set @@sql_mode="ANSI";
|
||||
select @@sql_mode;
|
||||
@@sql_mode
|
||||
@ -17,3 +17,32 @@ SELECT id FROM t1 GROUP BY id2;
|
||||
id
|
||||
drop table t1;
|
||||
SET @@SQL_MODE="";
|
||||
CREATE TABLE t1 (i int auto_increment NOT NULL, PRIMARY KEY (i));
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`i` int(11) NOT NULL auto_increment,
|
||||
PRIMARY KEY (`i`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
SET @@SQL_MODE="MYSQL323";
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`i` int(11) NOT NULL auto_increment,
|
||||
PRIMARY KEY (`i`)
|
||||
) TYPE=MyISAM
|
||||
SET @@SQL_MODE="MYSQL40";
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`i` int(11) NOT NULL auto_increment,
|
||||
PRIMARY KEY (`i`)
|
||||
) TYPE=MyISAM
|
||||
SET @@SQL_MODE="NO_FIELD_OPTIONS";
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`i` int(11) NOT NULL,
|
||||
PRIMARY KEY (`i`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
DROP TABLE t1;
|
||||
|
@ -355,6 +355,30 @@ CHECK TABLE t1;
|
||||
Table Op Msg_type Msg_text
|
||||
test.t1 check status OK
|
||||
DROP TABLE IF EXISTS t1;
|
||||
CREATE TABLE `t1` (
|
||||
t1_name VARCHAR(255) DEFAULT NULL,
|
||||
t1_id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
KEY (t1_name),
|
||||
PRIMARY KEY (t1_id)
|
||||
) AUTO_INCREMENT = 1000;
|
||||
INSERT INTO t1 (t1_name) VALUES('MySQL');
|
||||
INSERT INTO t1 (t1_name) VALUES('MySQL');
|
||||
INSERT INTO t1 (t1_name) VALUES('MySQL');
|
||||
SELECT * from t1;
|
||||
t1_name t1_id
|
||||
MySQL 1000
|
||||
MySQL 1001
|
||||
MySQL 1002
|
||||
SHOW CREATE TABLE `t1`;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`t1_name` varchar(255) default NULL,
|
||||
`t1_id` int(10) unsigned NOT NULL auto_increment,
|
||||
PRIMARY KEY (`t1_id`),
|
||||
KEY `t1_name` (`t1_name`)
|
||||
) ENGINE=MyISAM AUTO_INCREMENT=1003 DEFAULT CHARSET=latin1
|
||||
DROP TABLE `t1`;
|
||||
End of 4.1 tests
|
||||
CREATE TABLE t1 ( `a` int(11) NOT NULL auto_increment, `b` int(11) default NULL,PRIMARY KEY (`a`),UNIQUE KEY `b` (`b`));
|
||||
insert into t1 (b) values (1);
|
||||
replace into t1 (b) values (2), (1), (3);
|
||||
|
@ -294,7 +294,7 @@ t2 CREATE TABLE `t2` (
|
||||
`g` geometry NOT NULL,
|
||||
PRIMARY KEY (`fid`),
|
||||
SPATIAL KEY `g` (`g`(32))
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
) ENGINE=MyISAM AUTO_INCREMENT=101 DEFAULT CHARSET=latin1
|
||||
SELECT count(*) FROM t2;
|
||||
count(*)
|
||||
100
|
||||
|
@ -1701,6 +1701,44 @@ select * from t1;
|
||||
a b
|
||||
Osnabr<EFBFBD>ck K<>ln
|
||||
drop table t1;
|
||||
create table `t1` (
|
||||
t1_name varchar(255) default null,
|
||||
t1_id int(10) unsigned not null auto_increment,
|
||||
key (t1_name),
|
||||
primary key (t1_id)
|
||||
) auto_increment = 1000 default charset=latin1;
|
||||
insert into t1 (t1_name) values('bla');
|
||||
insert into t1 (t1_name) values('bla');
|
||||
insert into t1 (t1_name) values('bla');
|
||||
select * from t1;
|
||||
t1_name t1_id
|
||||
bla 1000
|
||||
bla 1001
|
||||
bla 1002
|
||||
show create table `t1`;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`t1_name` varchar(255) default NULL,
|
||||
`t1_id` int(10) unsigned NOT NULL auto_increment,
|
||||
PRIMARY KEY (`t1_id`),
|
||||
KEY `t1_name` (`t1_name`)
|
||||
) ENGINE=MyISAM AUTO_INCREMENT=1003 DEFAULT CHARSET=latin1
|
||||
DROP TABLE `t1`;
|
||||
select * from t1;
|
||||
t1_name t1_id
|
||||
bla 1000
|
||||
bla 1001
|
||||
bla 1002
|
||||
show create table `t1`;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`t1_name` varchar(255) default NULL,
|
||||
`t1_id` int(10) unsigned NOT NULL auto_increment,
|
||||
PRIMARY KEY (`t1_id`),
|
||||
KEY `t1_name` (`t1_name`)
|
||||
) ENGINE=MyISAM AUTO_INCREMENT=1003 DEFAULT CHARSET=latin1
|
||||
drop table `t1`;
|
||||
End of 4.1 tests
|
||||
create table t1 (a binary(1), b blob);
|
||||
insert into t1 values ('','');
|
||||
|
||||
|
@ -40,7 +40,7 @@ t9 CREATE TABLE `t9` (
|
||||
`b` char(16) NOT NULL,
|
||||
`c` int(11) NOT NULL,
|
||||
PRIMARY KEY (`a`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/tmp/' INDEX DIRECTORY='MYSQLTEST_VARDIR/run/'
|
||||
) ENGINE=MyISAM AUTO_INCREMENT=16725 DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/tmp/' INDEX DIRECTORY='MYSQLTEST_VARDIR/run/'
|
||||
alter table t9 rename t8, add column d int not null;
|
||||
alter table t8 rename t7;
|
||||
rename table t7 to t9;
|
||||
@ -53,7 +53,7 @@ t9 CREATE TABLE `t9` (
|
||||
`c` int(11) NOT NULL,
|
||||
`d` int(11) NOT NULL,
|
||||
PRIMARY KEY (`a`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/tmp/' INDEX DIRECTORY='MYSQLTEST_VARDIR/run/'
|
||||
) ENGINE=MyISAM AUTO_INCREMENT=16725 DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/tmp/' INDEX DIRECTORY='MYSQLTEST_VARDIR/run/'
|
||||
Got one of the listed errors
|
||||
Got one of the listed errors
|
||||
Got one of the listed errors
|
||||
@ -71,7 +71,7 @@ t9 CREATE TABLE `t9` (
|
||||
`c` int(11) NOT NULL,
|
||||
`d` int(11) NOT NULL,
|
||||
PRIMARY KEY (`a`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/tmp/' INDEX DIRECTORY='MYSQLTEST_VARDIR/run/'
|
||||
) ENGINE=MyISAM AUTO_INCREMENT=16725 DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/tmp/' INDEX DIRECTORY='MYSQLTEST_VARDIR/run/'
|
||||
drop database mysqltest;
|
||||
create table t1 (a int not null) engine=myisam;
|
||||
show create table t1;
|
||||
|
@ -26,4 +26,16 @@ drop table t1;
|
||||
|
||||
SET @@SQL_MODE="";
|
||||
|
||||
# Bug#14515
|
||||
|
||||
CREATE TABLE t1 (i int auto_increment NOT NULL, PRIMARY KEY (i));
|
||||
SHOW CREATE TABLE t1;
|
||||
SET @@SQL_MODE="MYSQL323";
|
||||
SHOW CREATE TABLE t1;
|
||||
SET @@SQL_MODE="MYSQL40";
|
||||
SHOW CREATE TABLE t1;
|
||||
SET @@SQL_MODE="NO_FIELD_OPTIONS";
|
||||
SHOW CREATE TABLE t1;
|
||||
DROP TABLE t1;
|
||||
|
||||
# End of 4.1 tests
|
||||
|
@ -219,7 +219,26 @@ INSERT INTO t1 (b) VALUES ('bbbb');
|
||||
CHECK TABLE t1;
|
||||
DROP TABLE IF EXISTS t1;
|
||||
|
||||
# End of 4.1 tests
|
||||
# BUG #19025:
|
||||
|
||||
CREATE TABLE `t1` (
|
||||
t1_name VARCHAR(255) DEFAULT NULL,
|
||||
t1_id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
KEY (t1_name),
|
||||
PRIMARY KEY (t1_id)
|
||||
) AUTO_INCREMENT = 1000;
|
||||
|
||||
INSERT INTO t1 (t1_name) VALUES('MySQL');
|
||||
INSERT INTO t1 (t1_name) VALUES('MySQL');
|
||||
INSERT INTO t1 (t1_name) VALUES('MySQL');
|
||||
|
||||
SELECT * from t1;
|
||||
|
||||
SHOW CREATE TABLE `t1`;
|
||||
|
||||
DROP TABLE `t1`;
|
||||
|
||||
--echo End of 4.1 tests
|
||||
|
||||
#
|
||||
# Bug #11080 & #11005 Multi-row REPLACE fails on a duplicate key error
|
||||
|
@ -713,6 +713,35 @@ select * from t1;
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# BUG #19025 mysqldump doesn't correctly dump "auto_increment = [int]"
|
||||
#
|
||||
create table `t1` (
|
||||
t1_name varchar(255) default null,
|
||||
t1_id int(10) unsigned not null auto_increment,
|
||||
key (t1_name),
|
||||
primary key (t1_id)
|
||||
) auto_increment = 1000 default charset=latin1;
|
||||
|
||||
insert into t1 (t1_name) values('bla');
|
||||
insert into t1 (t1_name) values('bla');
|
||||
insert into t1 (t1_name) values('bla');
|
||||
|
||||
select * from t1;
|
||||
|
||||
show create table `t1`;
|
||||
|
||||
--exec $MYSQL_DUMP --skip-comments test t1 > $MYSQLTEST_VARDIR/tmp/bug19025.sql
|
||||
DROP TABLE `t1`;
|
||||
|
||||
--exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/bug19025.sql
|
||||
|
||||
select * from t1;
|
||||
|
||||
show create table `t1`;
|
||||
|
||||
drop table `t1`;
|
||||
|
||||
--echo End of 4.1 tests
|
||||
# Bug #13318: Bad result with empty field and --hex-blob
|
||||
#
|
||||
create table t1 (a binary(1), b blob);
|
||||
@ -721,7 +750,6 @@ insert into t1 values ('','');
|
||||
--exec $MYSQL_DUMP --skip-comments --hex-blob test t1
|
||||
drop table t1;
|
||||
|
||||
# End of 4.1 tests
|
||||
|
||||
#
|
||||
# dump of view
|
||||
|
@ -3413,9 +3413,9 @@ ulong fix_sql_mode(ulong sql_mode)
|
||||
MODE_NO_KEY_OPTIONS | MODE_NO_TABLE_OPTIONS |
|
||||
MODE_NO_FIELD_OPTIONS | MODE_NO_AUTO_CREATE_USER);
|
||||
if (sql_mode & MODE_MYSQL40)
|
||||
sql_mode|= MODE_NO_FIELD_OPTIONS | MODE_HIGH_NOT_PRECEDENCE;
|
||||
sql_mode|= MODE_HIGH_NOT_PRECEDENCE;
|
||||
if (sql_mode & MODE_MYSQL323)
|
||||
sql_mode|= MODE_NO_FIELD_OPTIONS | MODE_HIGH_NOT_PRECEDENCE;
|
||||
sql_mode|= MODE_HIGH_NOT_PRECEDENCE;
|
||||
if (sql_mode & MODE_TRADITIONAL)
|
||||
sql_mode|= (MODE_STRICT_TRANS_TABLES | MODE_STRICT_ALL_TABLES |
|
||||
MODE_NO_ZERO_IN_DATE | MODE_NO_ZERO_DATE |
|
||||
|
@ -1022,8 +1022,8 @@ store_create_info(THD *thd, TABLE_LIST *table_list, String *packet,
|
||||
has_default= (field->type() != FIELD_TYPE_BLOB &&
|
||||
!(field->flags & NO_DEFAULT_VALUE_FLAG) &&
|
||||
field->unireg_check != Field::NEXT_NUMBER &&
|
||||
!((thd->variables.sql_mode & (MODE_MYSQL323 | MODE_MYSQL40)) &&
|
||||
has_now_default));
|
||||
!((thd->variables.sql_mode & (MODE_MYSQL323 | MODE_MYSQL40))
|
||||
&& has_now_default));
|
||||
|
||||
if (has_default)
|
||||
{
|
||||
@ -1052,8 +1052,7 @@ store_create_info(THD *thd, TABLE_LIST *table_list, String *packet,
|
||||
packet->append(tmp);
|
||||
}
|
||||
|
||||
if (!(thd->variables.sql_mode & MODE_NO_FIELD_OPTIONS) &&
|
||||
table->timestamp_field == field &&
|
||||
if (!limited_mysql_mode && table->timestamp_field == field &&
|
||||
field->unireg_check != Field::TIMESTAMP_DN_FIELD)
|
||||
packet->append(STRING_WITH_LEN(" ON UPDATE CURRENT_TIMESTAMP"));
|
||||
|
||||
@ -1182,6 +1181,25 @@ store_create_info(THD *thd, TABLE_LIST *table_list, String *packet,
|
||||
#endif
|
||||
}
|
||||
|
||||
/*
|
||||
Add AUTO_INCREMENT=... if there is an AUTO_INCREMENT column,
|
||||
and NEXT_ID > 1 (the default). We must not print the clause
|
||||
for engines that do not support this as it would break the
|
||||
import of dumps, but as of this writing, the test for whether
|
||||
AUTO_INCREMENT columns are allowed and wether AUTO_INCREMENT=...
|
||||
is supported is identical, !(file->table_flags() & HA_NO_AUTO_INCREMENT))
|
||||
Because of that, we do not explicitly test for the feature,
|
||||
but may extrapolate its existence from that of an AUTO_INCREMENT column.
|
||||
*/
|
||||
|
||||
if(create_info.auto_increment_value > 1)
|
||||
{
|
||||
packet->append(" AUTO_INCREMENT=", 16);
|
||||
end= longlong10_to_str(create_info.auto_increment_value, buff,10);
|
||||
packet->append(buff, (uint) (end - buff));
|
||||
}
|
||||
|
||||
|
||||
if (share->table_charset &&
|
||||
!(thd->variables.sql_mode & MODE_MYSQL323) &&
|
||||
!(thd->variables.sql_mode & MODE_MYSQL40))
|
||||
|
Reference in New Issue
Block a user