如何将一个数据库中的一个表复制到另一个数据库的表中去

数据库 Oracle
第一种情况:将a数据库.dbo.a表的数据追加到b数据库.dbo.b表中 (条件:此时b数据库中已创建好了b表);第二种情况:将a数据库.dbo.a表的数据复制到b数据库.dbo.b表中 (条件:此时b数据库中没有创建b表或同名的表)。

 

[[220621]]

***种情况:将a数据库.dbo.a表的数据追加到b数据库.dbo.b表中 (条件:此时b数据库中已创建好了b表)

inert into b数据库.dbo.b表

select * from a数据库.dbo.a表 [where 条件]

此T-SQL语句会有异常 仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'b数据库.dbo.b表'中的标识列指定显式值。

原因:b数据库.dbo.b表中某列别设置成自动增长(一般为主键ID)。

解决:把 * 变成 指定 [列名] ,把自动增长的那一列去掉。

第二种情况:将a数据库.dbo.a表的数据复制到b数据库.dbo.b表中 (条件:此时b数据库中没有创建b表或同名的表)

select * into b数据库.dbo.b表 from a数据库.dbo.a表 [where 条件]

执行完此语句后,b数据库中将会创建和a数据库.dbo.a表 一样结构的b表。通过此语句创建的b表没有主键。

1、同服务器 select * from 数据库名.dbo.表名 where 条件

2、不同服务器

SELECT * FROM OpenRowset('MSDASQL', 'Driver=SQL Server;Server=服务器名(或IP);UID=sa;PWD=服务器数据库密码', 数据库名.dbo.表 ) where 条件

SELECT *

FROM OPENROWSET('SQLOLEDB','服务器名(或IP)';'sa';'服务器数据库密码',

'查询的sql语句')

SELECT *

FROM OPENDATASOURCE(

'SQLOLEDB',

'Data Source=服务器名(或IP);User ID=sa;Password=服务器数据库密码'

).数据库名.dbo.表 where 条件 

责任编辑:庞桂玉 来源: 今日头条
相关推荐

2010-05-17 17:54:39

MySQL 数据库

2020-08-26 14:45:34

SQL数据库数次

2012-12-20 11:16:16

IBMdW

2018-11-19 10:10:51

Python数据库随机生成器

2010-03-26 09:46:32

SQL Server

2021-04-13 17:40:55

微服务架构模式

2022-10-12 08:47:55

数据库故障事件

2021-04-26 18:13:37

微服务模式数据库

2019-08-26 08:00:55

Docker容器映像

2016-12-26 15:23:21

戴尔

2010-11-17 09:18:27

数据库

2022-12-28 08:17:36

数据库数据导出

2023-01-13 08:26:29

数据库连接数计算

2011-07-20 13:40:00

SQLite数据库查询数据

2011-08-18 18:18:05

MySQL数据库优化

2022-10-12 23:02:49

Calcite异构数据框架

2011-05-24 14:34:25

StrokeDB分布式数据库

2017-11-13 13:33:09

MySQL全备份恢复表

2021-05-14 10:45:21

PythonNoSQL数据库

2011-06-01 10:59:59

Oceanbase海量数据库
点赞
收藏

51CTO技术栈公众号