首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

关键字 'user' 附近有语法异常

2013-01-28 
关键字 'user' 附近有语法错误。说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟

关键字 'user' 附近有语法错误。
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 

异常详细信息: System.Data.SqlClient.SqlException: 关键字 'user' 附近有语法错误。

源错误: 


行 69:                     //执行查询,判断是否保存相同信息
行 70:                     SqlDataReader dr;        //SqlDataReader是类,dr是对象所执行的是sqlcmd对象下的ExecuteReader(); 方法
行 71:                     dr = sqlcmd.ExecuteReader();
行 72:                     if (dr.Read())  //执行读操作
行 73:                     {
 
堆栈跟踪: 


[SqlException (0x80131904): 关键字 'user' 附近有语法错误。]
   System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) +2073486
   System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) +5064444
   System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning() +234
   System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +2275
   System.Data.SqlClient.SqlDataReader.ConsumeMetaData() +33
   System.Data.SqlClient.SqlDataReader.get_MetaData() +86
   System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) +311
   System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async) +987
   System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result) +162
   System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method) +32
   System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method) +141
   System.Data.SqlClient.SqlCommand.ExecuteReader() +89
   系统登录_新_.newuser.Button1_Click(Object sender, EventArgs e) in C:\Users\Administrator\Documents\Visual Studio 2010\Projects\系统登录(新)\系统登录(新)\newuser.aspx.cs:71
   System.Web.UI.WebControls.Button.OnClick(EventArgs e) +118
   System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +112
   System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10
   System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
   System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +36
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5563



 
源代码:
SqlDataReader dr;        //SqlDataReader是类,dr是对象所执行的是sqlcmd对象下的ExecuteReader(); 方法
                    dr = sqlcmd.ExecuteReader();
                    if (dr.Read())  //执行读操作
                    {
                        this.Page.RegisterStartupScript("ss", "<script>alert('邮箱或用户名已存在!')</script>");
                        return;
                    }
                    dr.Close();  //关闭读操作 user
[解决办法]
select username, email from [user] where username=@username  and  email=@email
[解决办法]
SQL语句的关键字user改成[user]

还有类似的desc。也会报错的。
[解决办法]
user是关键字 对于关键字当作表名或者数据库名的话都用[]括起来。[user]
其次and那里语法错误。 

热点排行