问题越小,往往越致命,前两天在完善一个项目时,把自己写的SQL语句放到本地iis运行,不会出错,然后用ftp上传后
测试一个点击按钮查询的时候,结果页面报错,
代码提示 "/" 应用程序中的服务起错误。 在将nvarchar 值 'ADMIN' 转换成数据类型int 失败!
这个时候我想到可能是我的SQL语句查询出了问题。
在出错页面上我仔细检查自己写的SQL语句,其中发现页面加载绑定的SQL没有问题,点击按钮查询的时候出问题。应该是SQL语法不对导致的
我把点击查询SQL语法列出来如下:
string sql= " select * from orderlist orderlist.[user]= “+ this.txregid.Text.Trim();
用 page.ClientScript.RegisterStartupScript(page.GetType(), "message", "<SCRIPT language=JavaScript>alert('" + sql+ "');</script>"); 弹出一下SQL语句
select * from orderlist where orderlist.[user]='650435'
然后上传服务器上,同样SQL语句运行,结果弹出
select * from orderlist where orderlist.[user]=650435
看来asp.net 服务器控件在服务器那边没有将数据类型正确的转换成char类型于是乎将sql语句改成了
string sql=string.Format("select * from orderlist where orderlist.[user]='{0}'", this.txregid.Text.Trim()); 这样就可以正常了。