以下是修改一条记录的代码: public int ChangUserInfo(UserVO changUserVO)
{
UserVO myUserVO = changUserVO;
int flag = 0;
myConnection.Open();
string sql = "update [user] set Username='" + myUserVO.UserName + "',Password='"+myUserVO.PassWord+"',Status="+myUserVO.Status+" where ID =" + myUserVO.ID + "";
OleDbCommand myCmd = new OleDbCommand(sql, myConnection);
flag = myCmd.ExecuteNonQuery();
myConnection.Close();
return flag;
}
测试时报“UPDATE语法错误”但我把 string sql 改为: string sql = "update [user] set Username='" + myUserVO.UserName + "',Status=1 where ID =" + myUserVO.ID + ""; 又不报错。到底是怎么回事?所有变量类型都没有问题,取值也没有问题,真郁闷。
{
UserVO myUserVO = changUserVO;
int flag = 0;
myConnection.Open();
string sql = "update [user] set Username='" + myUserVO.UserName + "',Password='"+myUserVO.PassWord+"',Status="+myUserVO.Status+" where ID =" + myUserVO.ID + "";
OleDbCommand myCmd = new OleDbCommand(sql, myConnection);
flag = myCmd.ExecuteNonQuery();
myConnection.Close();
return flag;
}
测试时报“UPDATE语法错误”但我把 string sql 改为: string sql = "update [user] set Username='" + myUserVO.UserName + "',Status=1 where ID =" + myUserVO.ID + ""; 又不报错。到底是怎么回事?所有变量类型都没有问题,取值也没有问题,真郁闷。
解决方案 »
- 请高手指点密码复杂度最少为三种字符的方法
- vs2008 ReportViewer导出excel时有三个工作表
- 很想问个问题,oneclick生成的安装文件,在客户端安装后,都把文件装在哪了
- ET44M210Q的USB晶片问题
- 在C#的俄罗斯方块游戏中如何处理一个小方块可以穿墙填补下面的空格,和竖行中同一颜色的方块可以消行
- 未将对象引用设置到对象的实例 谢谢!!!!
- 还是listView的问题
- SharpDevelop 1.0.3.1768 VS2003版本的完整源代码及可执行文件下载
- 虚拟主机的iis连接数问题
- .aspx文件中关于javascript控制下拉框状态(disabled)问题。请求帮助
- 请问c#中有没有union这种类型
- 字符串排序问题
public int ChangUserInfo(UserVO changUserVO)
{
UserVO myUserVO = changUserVO;
int flag = 0;
myConnection.Open();
string sql = "update [user] set Username='" + myUserVO.UserName + "',Password='" + myUserVO.PassWord + "',Status=@Status where ID =" + myUserVO.ID + "";
System.Data.SqlClient.SqlParameter para = new System.Data.SqlClient.SqlParameter();
para.DbType = DbType.Int32;
para.ParameterName = "Status";
para.Value = Convert.ToInt32(myUserVO.Status);
OleDbCommand myCmd = new OleDbCommand(sql, myConnection);
myCmd.Parameters.Add(para);
flag = myCmd.ExecuteNonQuery();
myConnection.Close();
return flag;
}
直接在这打个断点,跟踪调试一下不就知道了吗?
看看Password和Status的字段都是什么类型的。
最好把跟踪到的sql贴出来,这样才能看出错误
试试。建议lz看看数据库各个属性是否正确
楼主,跟踪下
where 前面加空格了没????
用[]引起来
为什么参数不都用SqlParameter ??很怪哦!