Search code examples
mysqlauto-incrementsql-likecreate-table

CREATE TABLE new_table_name LIKE old_table_name with old_table_name's AUTO_INCREMENT values


Can I create a new table with an old table's autoincriment status in mysql client?

I think, that ALTER TABLE new_table_name AUTO_INCREMENT=@my_autoincr_iment helps me, but this construction must use with a constant value. I don't want to use a difficult script.


Solution

  • 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;

    Thx to my brother!