請幫我這個:一個現有的連接被強行關閉遠程主機
此代碼的工作,除了在其控制進行「NOT EXSISTS」,那麼之後的任何查詢運行的IF塊內的情況下罰款這個塊的執行會導致sql連接被強制關閉,儘管運行這個代碼塊的結果是正確的。運行後我無法運行其他查詢。
IF(@Mode='Get')
BEGIN
IF(@Field='manager')
BEGIN
DECLARE @UserUserName NVARCHAR(250)
DECLARE @UserID AS VARCHAR(50)
SELECT @UserUserName=CAST(Value AS NVARCHAR(250)) FROM dbo.UserProperties WHERE [Key][email protected] AND Field='manager'
IF(NOT EXISTS(SELECT * FROM dbo.Users WHERE [email protected]) OR @UserUserName IS NULL)
BEGIN
SELECT @UserID = dbo.fnGetManagerId(CAST(@Key AS INT)) -- numeric
SELECT @UserUserName=UserUsername FROM dbo.Users WHERE [email protected]
END
SELECT UserName AS Value FROM users WHERE [email protected]
END
ELSE
BEGIN
SELECT Value FROM dbo.UserProperties WHERE [Key][email protected] AND [email protected]
END
END
你真的有2個獨立的列,一個叫UserUsername,另一個叫用戶名嗎?什麼'fnGetManagerId'看起來像? – 2010-07-21 13:09:09
如果在查詢分析器中運行相同的查詢,會發生什麼情況? – 2010-07-21 13:35:56