2014-02-27 41 views
0

我使用Lua編程語言進行編程,並使用SQL進行編程。無法綁定多部分標識符(SQL SERVER)

在我的程序中,我有一個select語句,它從名爲「users」的表中提取userid並將其存儲在名爲「U」的變量中。

這是結:

local U = conn:query{live=true,sql="select top 1 userid from users where username = 'iguana01'"} 

現在,由於頂部1用戶ID存儲在U, 我想這對我們在我的下一個語句是

"UPDATE dbo.Messages SET Status='R' , ModifyDate = GetUTCDate(), ModifiedById = U.userid WHERE MessageId ='10'" 

但如果我我使用U.userid,它說「多部分標識符不能綁定」。其次,這個錯誤是因爲我試圖使用U.userId這是來自Users表中的數據來自於Messages表的ModifiesById字段,但我沒有這些表之間的任何公共列進行連接。 我唯一的要求是在Message Table的ModifiedById列中使用Users表的UserId列的前1個值。 我該如何解決這個問題?

回答

0

我相信這個錯誤是存在的,因爲U.userid對於SQL查詢引擎是不知道的:U是一個局部變量,引擎無法訪問它。嘗試更改第二個查詢以將U.userid的值連接到字符串中:

"UPDATE dbo.Messages SET Status='R' , ModifyDate = GetUTCDate(), ModifiedById = " .. U.userid .. " WHERE MessageId ='10'" 
相關問題