2013-04-29 44 views
0

我有一個數據庫叫檢查,和一個表用戶在sql server R 2中選擇查詢給出錯誤?

我第一次嘗試如下查詢它:

select * from User ; 

...然後像這樣:

select * from Inspection.dbo.User ; 

這兩個都扔了以下錯誤:

Incorrect syntax near the keyword 'User'

爲什麼我得到這個錯誤?

+0

我解決它,我必須寫它像「選擇*從[檢查]。[dbo]。[用戶]」當我給它連接字符串中的數據庫名稱,那麼爲什麼它是這樣的? – 2013-04-29 07:32:48

+0

我看到你已經找到了解決方案。我的回答雖然提供瞭解釋,請參閱下文! :) – Kjartan 2013-04-29 08:14:40

回答

0

由於您使用名稱user,因此您需要在表名稱周圍使用方括號。

由於user是一個保留字(它自己有一個特殊的含義),它不能直接用作表名。

方括號告訴MS Sql,在這種情況下,[user]是用戶(您!)定義的名稱(即表),而不是實際用戶操作中的關鍵字,如例如:

CREATE USER slartibartfast (...); 

更新:More info about this here