将表复制到另一个数据库

时间:2015-04-28 22:03:32

标签: sql tsql schema

首先,我是T-SQL的初学者,所以这个问题可能很愚蠢。对于那个很抱歉。

我正在尝试将表复制到另一个像这样的数据库

USE Datatable
GO
     SELECT *
        INTO Datatable.HumanResources.Employee
        FROM AdventureWorks2012.HumanResources.Employee
        WHERE 1=0

我收到错误:

"Msg 2760, Level 16, State 1, Line 2
The specified schema name "HumanResources" either does not exist or 
you do not have permission to use it." 

我是否拥有权限,或者我无法以某种方式重复使用Adventureworks架构或Alter权限?帮助

2 个答案:

答案 0 :(得分:1)

新数据库中是否已存在Datatable.HumanResources.Employee且具有相同的列和类型?

当您收到权限错误时,还要检查您连接到SQL的用户是否对这两个数据库具有适当的权限。

您的WHERE 1=0(我相信您是从here获得的)只会创建一个包含其他表格列的空白表。

您需要的正确查询

USE AdventureWorks2012
GO

SELECT *
INTO HumanResources.Employee IN Datatable
FROM HumanResources.Employee

答案 1 :(得分:0)

源源数据库和目标数据库中是否存在HumanResources方案?另外,我想知道为什么你有WHERE 1=0。即使您没有此错误,该查询也永远不会复制任何行。