我可以在mysql客户端创建一个具有旧表自动归档状态的新表吗?
我认为,ALTER TABLE new_table_name AUTO_INCREMENT=@my_autoincr_iment
对我有帮助,但这种结构必须使用恒定值。
我不想使用困难的剧本。
答案 0 :(得分:7)
的MySQL> create table new_table like old_table;
的MySQL> select @my_auto_increment:=auto_increment from information_schema.tables where table_name='old_table';
的MySQL> set @query = CONCAT("alter table new_table auto_increment = ", @my_auto_increment);
的MySQL> prepare stmt from @query;
的MySQL> execute stmt;
的MySQL> deallocate prepare stmt;
对我哥哥来说!
答案 1 :(得分:1)
您的CREATE TABLE可以指定要使用的auto_increment:
mysql> create table foo (i int primary key auto_increment, s varchar(12)) auto_increment = 10;
Query OK, 0 rows affected (0.19 sec)
mysql> insert into foo (s) values ("s");
Query OK, 1 row affected (0.09 sec)
mysql> select * from foo;
+----+------+
| i | s |
+----+------+
| 10 | s |
+----+------+
1 row in set (0.03 sec)