人物表にデータを挿入しようとしています。並行して、挿入された人物ID(ID列値)をprovideridと共に他のテーブルからproviderpersonにコピーする必要があります。以下のクエリを試しましたが、エラーが発生しました。SQL Server OUTPUT ... INTO ....句を使用してデータをコピー中にエラーが発生しました
複数パート識別子「P.Provider_ID」はバインドできませんでした。
INSERT INTO PERSONS (
FirstName
,LastName
,Gender
,DOB
,EmailID
,OfficePhone
,Fax
,Mobile
,CertificationType_ID
--,License
--,StateCertificaionNo
--,StateCertificationExpiration
--,Comments
,ERTCleared
,IsAMR
,IsActive
,CreatedDate
,ModifiedDate
,IsCrewMember
,UserName
)
OUTPUT INSERTED.Person_ID
,P.Provider_ID
--,getdate()
--,getdate()
--,@appuserId
--,@appuserId
INTO @ProviderPersons(PersonID, ProviderID)
--00, CreatedDate, ModifiedDate, CreatedUser_ID, ModifiedUser_ID)
SELECT S.FirstName
,S.LastName
,S.Gender
,S.DOB
,S.EmailID
,S.OfficePhone
,S.Fax
,S.Mobile
,1 AS CertificationType_ID
,0 AS ERTCleared
,CASE
WHEN S.IsAMR = 'Yes'
THEN 1
ELSE 0
END AS IsAMR
,1 AS IsActive
,getdate() AS CreatedDate
,getdate() AS ModifiedDate
,1 AS IsCrewMember
,S.UserName
FROM [dbo].[STA_CrewMembers] S
INNER JOIN [dbo].[Providers] P ON P.BusinessUnitNumber = S.BusinessUnitNumber
OR P.NAME = S.PROVIDER
WHERE NOT EXISTS (
SELECT 1
FROM Persons
WHERE EmailID = S.EmailID
)
これをより良い方法で処理する方法を教えてください。前もって感謝します。
可能なデュープ:[出力Inserted.Idし、別のフィールド]( http://stackoverflow.com/q/37339422/15498) –