0

有一个 SQL INSERT 语句

INSERT INTO [tbAddress]
           ([CompanyName])
 VALUES
           ('undefined'),

和 UPDATE 语句

UPDATE tbOrganisation
SET AddressID=INSERT INTO [tbAddress]
           ([CompanyName])
     VALUES
           ('undefined' )

WHERE AddressID = 783240

我需要为每条记录插入Address新的相同记录AddressID = 783240,请帮助。

4

2 回答 2

1

您需要使用SCOPE_IDENTITY

    DECLARE @addressId int

    INSERT INTO [tbAddress] ([CompanyName]) VALUES ('undefined')
    SET @addressId = SCOPE_IDENTITY()

    UPDATE tbOrganisation SET AddressID = @addressId WHERE AddressID = 783240

有关 Technet 的更多信息,请访问:http ://technet.microsoft.com/en-us/library/ms190315.aspx 。请注意,您可能会遇到 @@IDENTITY 作为另一种解决方案,但是存在细微差别(我相信,与触发器有关)。

于 2013-08-13T12:29:02.703 回答
0

我不是 100% 确定我理解了这个问题,但我认为这应该会有所帮助:

UPDATE tbOrganisation SET AddressID='undefined' WHERE AddressID=783240;

这是你的想法吗?

于 2013-08-13T12:30:29.823 回答