【发布时间】:2013-12-09 23:25:45
【问题描述】:
我的问题是@officeident。对于插入LicenseHolder 的每条新记录,它具有相同的officeident.. 此SQL 将每行的值1495 插入OfficeID。这是最后插入的身份。这不会创建父子关系。
我想我应该研究下一个光标。对于Office 中的每个插入,然后将新行添加到LicenseHolder 以便我可以建立关系。或者,如果有更简单的方法或任何帮助将不胜感激。
DECLARE @officeident INT
insert into [MembersDB].[dbo].[Office]
([AddressLine1]
,[AddressLine2]
,[State]
,[PostCode])
select [OfficeMailingAddr],[OfficeMailingAddr],[state],'1' FROM [Members].[dbo].[Main]
SET @officeident = SCOPE_IDENTITY()
INSERT INTO [MembersDB].[dbo].[LicenseHolder] ([Name]
,[Email]
,[Mobile]
,[OfficeNumber]
,[LicenseHolderTypeID]
,[PartyTypeID]
,[OfficeID])
SELECT
[OfficeOf]
,[OfficeEmail]
,[Phone]
,'1234'
,'1'
,'1'
,@officeident --I want like this to be different for each row.
FROM [Members].[dbo].[Main]
【问题讨论】:
标签: sql sql-server sql-server-2008 tsql