加入收藏 | 设为首页 | 会员中心 | 我要投稿 百客网 - 百科网 (https://www.baikewang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql copy复制拷贝表数据及结构的几种方式

发布时间:2022-11-04 10:42:33 所属栏目:MySql教程 来源:
导读:  mysql拷贝表操作我们会常常用到MySQL 复制表,下面就为您详细介绍几种mysql拷贝表的方式,希望对您学习mysql拷贝表方面能够有所帮助。

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

  id username password

 
  mysql拷贝表操作我们会常常用到MySQL 复制表,下面就为您详细介绍几种mysql拷贝表的方式,希望对您学习mysql拷贝表方面能够有所帮助。
 
  假如我们有以下这样一个表:
 
  id username password
 
  -----------------------------------
 
  1 admin *************
 
  2 sameer *************
 
  3 stewart *************
 
  CREATE TABLE IF NOT EXISTS `admin` ( `id` int(6) unsigned NOTNULL 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. 我们也可以在创建表的同时定义表中的字段信息。
 
  CREATE TABLE newadmin ( id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY ) AS ( SELECT * FROM admin )
 

(编辑:百客网 - 百科网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!