SQL数据库中如何把一个表中的数据复制到另一个表中?

SQL数据库中如何把一个表中的数据复制到另一个表中?,第1张

SQL数据库中如何把一个表中的数据复制到另一个表中?** 1整个表复制:**
insert into table1 
select  * 
from table2
2部分列复制:**
insert into table1(column1,column2,column3...) 
select column1,column2,colunm3... 
from table2
3一个数据库中的表中的数据复制到另一个数据库中的一个表中:
insert into 数据库A.dbo.table1(col1,col2,col3...) 
select col1,col2,col3... 
from 数据库B.dbo.table2
4创建新表跟原表一样的结构,并复制数据
select * into tableNew    from  table
5实践中的问题:

原本table_first是空表,cmdb.host_hostinfo_del的信息不能直接复制过来,
会报错:SQL 错误 [1136] [21S01]: Column count doesn’t match value count at row 1
在DBeaver中直接复制表,只能复制列,不能复制数据。
在此基础上,才选择了复制数据。代码如下:

insert into test_liu.table_first 
select  * 
from cmdb.host_hostinfo_del

当然可以创建新表跟原表一样的结构,并复制数据,

select * 
into tablenew    
from  table_first

出现问题:SQL 错误 [1327] [42000]: Undeclared variable: tablenew

在MySQL中使用以上会报错,如何解决?会报上边的错误,这是因为MySQL不支持这种语法,它的替代语法是这样的:

create table tablenew
(select  *
from table_first
)

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

原文地址: http://outofmemory.cn/sjk/991522.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存