以下の構造に似た3つのテーブルがあります
CREATE TABLE [dbo].[EmpBasic](
[EmpID] [int] IDENTITY(1,1) NOT NULL Primary Key,
[Name] [varchar](50),
[Address] [varchar](50)
)
CREATE TABLE [dbo].[EmpProject](
[EmpID] [int] NOT NULL primary key, // referencing column with EmpBasic
[EmpProject] [varchar](50) )
CREATE TABLE [dbo].[EmpFull_Temp](
[ObjectID] [int] IDENTITY(1,1) NOT NULL Primary Key,
[T1Name] [varchar](50) ,
[T1Address] [varchar](50) ,
[T1EmpProject] [varchar](50)
)
EmpFull_Temp テーブルには、ダミーのオブジェクト ID 列を持つレコードがあります...最初の 2 つのテーブルにこのテーブルのレコードを入力したいのですが、最初の 2 つのテーブル間の参照として EmpID を使用します。
ストアドプロシージャでこれを試しました...
Create Table #IDSS (EmpID bigint, objID bigint)
Insert into EmpBasic
output Inserted.EmpID, EmpFull_Temp.ObjectID
into #IDSS
Select T1Name, T1Address from EmpFull_Temp
Where ObjectID < 106
Insert into EmpProject
Select A.EmpID, B.T1EmpProject from #IDSS as A, EmpFull_Temp as B
Where A.ObjID = B.ObjectID
しかし、それは言う..マルチパート識別子「EmpFull_Temp.ObjectID」をバインドできませんでした。
これを達成するために私を助けてください...
編集: [名前] + [アドレス]が[EmpBasic]テーブル全体で一意であるという保証はありません