Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/70.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_Database_Constraints_Primary Key - Fatal编程技术网

Sql 复制保留约束的表

Sql 复制保留约束的表,sql,database,constraints,primary-key,Sql,Database,Constraints,Primary Key,我正在设法找到解决我问题的办法。我有一个新创建的数据库,我想将一些表从当前数据库移动到该数据库。当我尝试时: SELECT * INTO newDB FROM oldDB 这适用于数据,但是它不保留原始表中的任何约束。在网上浏览之后,我发现了一个似乎没有帮助的SET IDENTITY_Inserth 有没有其他方法或想法我可以尝试?我需要移动大约300张桌子 编辑: 如果可能的话,我不想为每个新表生成脚本。我不知道这有什么简单的方法。看看这个:这就是我担心的。希望不必为每个表生成脚本就可以完成

我正在设法找到解决我问题的办法。我有一个新创建的数据库,我想将一些表从当前数据库移动到该数据库。当我尝试时:

SELECT * INTO newDB
FROM oldDB
这适用于数据,但是它不保留原始表中的任何约束。在网上浏览之后,我发现了一个似乎没有帮助的SET IDENTITY_Inserth

有没有其他方法或想法我可以尝试?我需要移动大约300张桌子

编辑:
如果可能的话,我不想为每个新表生成脚本。

我不知道这有什么简单的方法。看看这个:这就是我担心的。希望不必为每个表生成脚本就可以完成此操作。谢谢你的评论,我不知道不使用脚本怎么做。如果您最终使用脚本来完成,那么我对一些表也做了类似的操作,使用BULK并从.CSV文档中提取数据。如果你想继续我的搜索,我可以在答案中做一个例子,似乎唯一的方法就是生成脚本来完成这项工作。批量是否比为需要移动的每个表生成脚本更容易/更快?我认为大致相同。批量读取.CSV文件,就像它是一个文本文件一样。所有来自它的东西都是一个NVarchar。要使用它,您需要创建一个临时表,其中所有列都是nvarchar值,然后在实际表中插入临时表时,转换好的值。要使任务更快,您可以右键单击表->选择脚本表为->创建到->新建查询编辑器窗口,并将所有值更改为nvarchar