Sql server SQL Server将表从一个数据库复制到另一个数据库并保留标识字段

Sql server SQL Server将表从一个数据库复制到另一个数据库并保留标识字段,sql-server,Sql Server,我将一个表从一个数据库复制到另一个数据库,实际上是从一个连接复制到另一个连接。问题在于关键字段是标识字段。在新数据库中,不使用identity属性 因此,当我尝试插入到新表中时,我得到一个错误,因为用于具有标识属性的字段不能为null。我可以创建一个新的标识字段,然后将其重命名为原始名称,但是这些值将与它链接到的其他表不同步 提前感谢您的帮助 Bob这将在db2中以与db1相同的结构创建表[db2].[dbo].[YouTableName YouwantinDB2],并从[db1].[dbo].

我将一个表从一个数据库复制到另一个数据库,实际上是从一个连接复制到另一个连接。问题在于关键字段是标识字段。在新数据库中,不使用identity属性

因此,当我尝试插入到新表中时,我得到一个错误,因为用于具有标识属性的字段不能为null。我可以创建一个新的标识字段,然后将其重命名为原始名称,但是这些值将与它链接到的其他表不同步

提前感谢您的帮助

Bob

这将在db2中以与db1相同的结构创建表[db2].[dbo].[YouTableName YouwantinDB2],并从[db1].[dbo].[yourTableName]复制所有数据


答案可以在第二条评论中找到。我将它粘贴到这里:

创建表dbo.Tmp_名称 Id int不为空 身份1,1, 名称varchar50 NULL 在[小学] 去

在上设置标识\u插入dbo.Tmp\u名称 去

如果存在,请选择* 来自dbo.Names 在dbo.Tmp_名称Id、名称中插入 选择Id, 名称 来自dbo.Names TABLOCKX 去

将IDENTITY\u INSERT dbo.Tmp\u名称设置为OFF
go

请发布您的sql。也许这对您有用?两个数据库在同一实例上吗?感谢您的回复。但这不起作用。除了新表键没有identity属性之外,一切都正常。这就是问题所在。
SELECT * INTO [db2].[dbo].[YoutableNameYouWantInDb2] 
FROM [db1].[dbo].[yourTableName]