Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 使用另一个表创建一个表_Sql_Sql Server - Fatal编程技术网

Sql 使用另一个表创建一个表

Sql 使用另一个表创建一个表,sql,sql-server,Sql,Sql Server,或 我已经在SQLServer中运行了上述两个命令。 但是对于显示以下错误的两个命令 味精156,第15级,状态1,第1行 关键字“AS”附近的语法不正确 正确的代码应该是什么?如果表还不存在,您可以使用 CREATE TABLE New_table AS SELECT * FROM Old_table 如果新表已经存在,则必须使用 SELECT * INTO New_Table FROM Existing_table 如果表还不存在,可以使用 CREATE TABLE New_table

我已经在SQLServer中运行了上述两个命令。 但是对于显示以下错误的两个命令

味精156,第15级,状态1,第1行
关键字“AS”附近的语法不正确


正确的代码应该是什么?

如果表还不存在,您可以使用

CREATE TABLE New_table AS SELECT * FROM Old_table
如果新表已经存在,则必须使用

SELECT *
INTO New_Table
FROM Existing_table

如果表还不存在,可以使用

CREATE TABLE New_table AS SELECT * FROM Old_table
如果新表已经存在,则必须使用

SELECT *
INTO New_Table
FROM Existing_table

如果您不需要数据,可以使用

CREATE TABLE New_table AS SELECT * FROM Old_table
--这只填充模式

INSERT INTO New_Table(list of columns)
    SELECT (list of columns)
    FROM Existing_table

如果您不需要数据,可以使用

CREATE TABLE New_table AS SELECT * FROM Old_table
--这只填充模式

INSERT INTO New_Table(list of columns)
    SELECT (list of columns)
    FROM Existing_table

这在SQL Server中适用于我:

select 
* into newtable from oldtable where 1=2

select top 0 * into newtable from oldtable

这在SQL Server中适用于我:

select 
* into newtable from oldtable where 1=2

select top 0 * into newtable from oldtable
根据OP的建议,他试图从一个数据库的表向另一个数据库的表插入只有几列

以下查询在他的案例中起了作用:

SELECT *
INTO new_table 
FROM old_table;
根据OP的建议,他试图从一个数据库的表向另一个数据库的表插入只有几列

以下查询在他的案例中起了作用:

SELECT *
INTO new_table 
FROM old_table;


了解您正在使用的数据库会很方便我正在使用sql server 2008 R2SELECT*从旧表插入新表会很方便了解您正在使用的数据库我正在使用sql server 2008 R2SELECT*从旧表插入新表谢谢。它起作用了。但是,如果现有表位于同一服务器上的不同数据库中,我该怎么办?那么您需要使用三个部分的名称:
INSERT INTO database.dbo.New_table(列列表)…
SELECT*INTO cib_ISD.New_table(dept,deptname)FROM esblmis.Existing_table我就是这样写的。其中CIB_ISD是目标数据库,ESBLMIS是源数据库。但是显示了一些错误…从esblmis.existing表格中选择*进入cib_ISD.New_表格(dept,deptname)。其中CIB_ISD是目标数据库,ESBLMIS是源数据库。但是显示出一些错误…@Md.AbdulMasudRana:你收到了什么错误?使用
SELECT*INTO
时,无法定义列名。如果该表已经存在,则只需使用
INSERT-to
。或者使用
从esblmis中选择dept,deptname进入cib_ISD.New_表。现有_表
谢谢。它起作用了。但是,如果现有表位于同一服务器上的不同数据库中,我该怎么办?那么您需要使用三个部分的名称:
INSERT INTO database.dbo.New_table(列列表)…
SELECT*INTO cib_ISD.New_table(dept,deptname)FROM esblmis.Existing_table我就是这样写的。其中CIB_ISD是目标数据库,ESBLMIS是源数据库。但是显示了一些错误…从esblmis.existing表格中选择*进入cib_ISD.New_表格(dept,deptname)。其中CIB_ISD是目标数据库,ESBLMIS是源数据库。但是显示出一些错误…@Md.AbdulMasudRana:你收到了什么错误?使用
SELECT*INTO
时,无法定义列名。如果该表已经存在,则只需使用
INSERT-to
。或者使用
从esblmis中选择dept,deptname到cib_ISD.New_表。现有_表
我也想复制数据。在这种情况下,你可以使用Marc answer我也想复制数据。在这种情况下,你可以使用Marc answer而不是创建新答案,你可以在现有答案中编辑和更新,而不是创建新答案,您可以在现有答案中进行编辑和更新