mysql中用命令行复制表结构的方法主要有一下几种

mysql中用命令行复制表结构的方法主要有一下几种,第1张

假如我们有以下这样一个表:

id username password

-----------------------------------

1admin*************

2sameer *************

3stewart *************

CREATE TABLE IF NOT EXISTS `admin` ( `id` int(6) unsigned NOT NULL auto_increment, `username` varchar(50) NOT NULL default '', `password` varchar(100) default NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=4

1. 下面这个语句会拷贝表结构到新表newadmin中。 (不会拷贝表中的数据

CREATE TABLE newadmin LIKE admin

2. 下面这个语句会拷贝数据到新表中。 注意:这个语句其实只是把select语句的结果建一个表。所以newadmin这个表不会有主键,索引。

CREATE TABLE newadmin AS ( SELECT * FROM admin )

3. 如果你要真正的复制一个表。可以用下面的语句。

CREATE TABLE newadmin LIKE admin INSERT INTO newadmin SELECT * FROM admin

4. 我们可以 *** 作不同的数据库

CREATE TABLE newadmin LIKE shop.admin CREATE TABLE newshop.newadmin LIKE shop.admin

5. 我们也可以拷贝一个表中其中的一些字段。

CREATE TABLE newadmin AS ( SELECT username, password FROM admin )

6. 我们也可以讲新建的表的字段改名。

CREATE TABLE newadmin AS ( SELECT id, username AS uname, password AS pass FROM admin )

7. 我们也可以拷贝一部分数据。

CREATE TABLE newadmin AS ( SELECT * FROM admin WHERE LEFT(username,1) = 's' )

8. 我们也可以在创建表的同时定义表中的字段信息。

有很多软件直接点击就可以导出导入这个不说了,说一下命令方式

mysqldump命令导出数据

格式:mysqldump -h链接ip -P(大写)端口 -u用户名 -p密码 数据库名>d:XX.sql(路劲)

示例:mysqldump -h127.0.0.1 -P3306 -uroot -p123456 htgl >d:\htgl.sql

#导出某个数据库的表--结构+数据+函数+存储过程

mysqldump -h127.0.0.1 -uroot -p123456 --opt -R htgl >d:\htgl.sql

1.导出结构不导出数据

mysqldump -d 数据库名 -uroot -p >xxx.sql

2.导出数据不导出结构

mysqldump -t 数据库名 -uroot -p >xxx.sql

3.导出数据和表结构

mysqldump 数据库名 -uroot -p >xxx.sql

4.导出特定表的结构

mysqldump -uroot -p -B数据库名 --table 表名 >xxx.sql

#mysqldump [OPTIONS] database [tables]

牛!!!不用懒成这种地步嘛,后动添加

主键

ALTER TABLE table ADD PRIMARY KEY([ID])

自增

ALTER TABLE table CHANGE [ID] [ID] INT( 32 ) NOT NULL AUTO_INCREMENT


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7547914.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-07
下一篇 2023-04-07

发表评论

登录后才能评论

评论列表(0条)

保存