从sql server 2005中不同数据库的另一个表创建表

Gre*_*reg 5 sql-server select sql-server-2005 create-table

我有一个数据库"temp"与表"A".我创建了新的数据库"temp2".我想将表"A"从"temp"复制到"temp2"中的新表.我尝试了这个语句,但它说我的语法不正确,这是声明:

CREATE TABLE B IN 'temp2'
  AS (SELECT * FROM A IN 'temp');
Run Code Online (Sandbox Code Playgroud)

这是错误:

消息156,级别15,状态1,行2关键字"IN"附近的语法不正确.消息156,级别15,状态1,行3关键字"IN"附近的语法不正确.

谁知道这个问题是什么?

提前致谢,

格雷格

Mar*_*ith 19

我之前没见过那种语法.这就是我通常使用的.

SELECT * 
INTO temp2.dbo.B
FROM temp.dbo.A
Run Code Online (Sandbox Code Playgroud)


Ode*_*ded 5

您需要限定足够的表名,以便 SQL Server 能够识别正确的表。

名称结构是<server name>.<database name>.<schema>.<table>. 由于两个表都位于同一台服务器上,因此您可以省去它,但仍然需要其余的:

SELECT * 
INTO temp2.dbo.B
FROM temp.dbo.A
Run Code Online (Sandbox Code Playgroud)