我在MySQL服务器上有一张表,希望得到可以重新创建该表的SQL语句。
如何获取用于重新创建SQL表的查询语句?
SHOW CREATE TABLE
命令来返回创建表所用的SQL语句。mysql> SHOW CREATE TABLE t;
CREATE TABLE t (
id INT(11) default NULL auto_increment,
s char(60) default NULL,
PRIMARY KEY (id)
) ENGINE=MyISAM
如果你只有与数据库的连接而没有服务器上的CLI,那么这将非常有用。如果你有CLI,请像liamgriffiths建议的那样使用mysqldump。
mysqldump可以实现这个功能-http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html
你可以按照以下方式使用它:
mysqldump [databasename] [tablename] > mysqltablesql.sql
mysqldump [OPTIONS] database [tables]>backup-file.sql
如果您没有指定表或使用 --databases 或 --all-databases 选项,则会备份整个数据库。
您可以通过执行 mysqldump --help 命令来获取您的版本支持的选项列表。
请注意,如果您在不使用 --quick 或 --opt 选项的情况下运行 mysqldump,则 mysqldump 在转储结果之前将整个结果集加载到内存中。如果您要备份大型数据库,则可能会出现问题。
mysqldump
,但你也可以尝试使用 create table <new-table-name> like <old-table-name>
,然后再使用 insert into <new-table-name> select * from <old-table-name>
。
mysqldump -u yourlogin -p your_database your_tablename
。输入密码,然后会显示创建表语句。如果你想通过phpmyadmin图形界面来获取,则运行查询:show create table your_tablename
。 - Eric Leschinski