2012-05-08 122 views
2

我有一個問題..我使用存儲過程與用戶定義表(@logs)。我將它插入其他數據庫表(InOutLog),命令OUTPUT into,其中我得到inserted id。SQL Server:輸出插入.Id加入插入的臨時用戶定義表

主要的問題是,我想我的用戶定義的表插入到2代數據庫表的內容:

  1. InOutLog,在那裏我得到插入ID和..
  2. 想拿插入ID和其他定義的表值(l.Title+';'+l.Comment)並將其插入表MessageLog

但是我不能訪問l.Title+';'+l.Comment。此外,我無法找到任何簡單的解決方案來合併我的用戶定義的表和使用插入的ID值臨時表..

下面是代碼:

insert into InOutLog(NFCId, UserID, DateEnter, DateLeave, ProjectId, 
Status, ServerDateEnter) 
output inserted.Id, inserted.DateLeave, l.Title+';'+l.Comment, inserted.UserId 
into MessageLog(TagLogId, MessageDate, Answer, UserId) 
    select l.NFCTagId, l.UserId, l.ScanDate, l.StartDate, @projectID, 0, getdate() 
    from @logs l 

有什麼建議?這種情況下的最佳做法是什麼?

+0

請格式化你的代碼 – Arion

回答