Select 选择sql server R 2中的查询给定错误?

Select 选择sql server R 2中的查询给定错误?,select,sql-server-2008-r2,select-query,Select,Sql Server 2008 R2,Select Query,我有一个名为检查的数据库和一个名为用户的表 我首先尝试如下查询: select * from User ; 。。。然后像这样: select * from Inspection.dbo.User ; 这两者都会引发以下错误: 关键字“User”附近的语法不正确 为什么会出现此错误?您需要在表的名称周围使用方括号,因为您使用的是名称用户 由于user是一个保留字(本身具有特殊含义),因此不能直接用作表名 方括号告诉MS Sql,在本例中,[user]是用户(您!)已定义的内容(即表)的名称,而

我有一个名为检查的数据库和一个名为用户的表

我首先尝试如下查询:

select * from User ;
。。。然后像这样:

select * from Inspection.dbo.User ;
这两者都会引发以下错误:

关键字“User”附近的语法不正确


为什么会出现此错误?

您需要在表的名称周围使用方括号,因为您使用的是名称
用户

由于
user
是一个保留字(本身具有特殊含义),因此不能直接用作表名

方括号告诉MS Sql,在本例中,
[user]
是用户(您!)已定义的内容(即表)的名称,而不是实际用户操作中的关键字,例如:

CREATE USER slartibartfast (...);

更新:

我解决了它,当我在连接字符串中给它数据库名时,我必须像“select*from[Inspection].[dbo].[User]”那样编写它,那么它为什么会这样做呢?我看到你已经找到了一个解决方案。不过,我的回答对此给出了解释,请参见下文!)