C#/ SQL错误:解析查询时出错。 [令牌行号= 1,令牌行偏移= 26,令牌出错=用户]

问题描述:

我不能介意这个错误。服务器错误指出实现这一行:C#/ SQL错误:解析查询时出错。 [令牌行号= 1,令牌行偏移= 26,令牌出错=用户]

<select name="selectUserName"> 
     @foreach(var row in db.Query(selectQueryString)) { 
      <option>@row.username</option> 
     } 
     </select> 

其中selectQueryString定义为:

var selectQueryString = "SELECT ID, username FROM user"; 

用户在SQL Server中的reserved word。尝试:

FROM [User] 
+0

非常感谢Andomar! – QEx 2013-02-13 16:31:18

USER是SQL Server中的reserved keyword

你应该用方括号[]

喜欢使用它;

var selectQueryString = "SELECT ID, username FROM [USER]"; 
+0

非常感谢Soner Gonul! – QEx 2013-02-13 16:26:35