sql 语句错误

st_song_tao 2010-09-24 01:07:07

public void Update(Users user)
{
string sql = "update users set username=@username,password=@password where id=@id";
OleDbParameter[] paras = new OleDbParameter[]
{
new OleDbParameter("@username",user.Username),
new OleDbParameter("@password",user.Password),
new OleDbParameter("@id",user.Id)
};
DBHelp.ExecuteNonquery(sql, paras);
}


执行方法UPDATE语法错误
...全文
165 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuqilin1987 2010-09-25
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wuyq11 的回复:]
string sql = "update users set [username]=@username,[password]=@password where [id]=@id";
注意参数顺序
[/Quote]
正解!!!!
cjh200102 2010-09-25
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 zhangby1 的回复:]

引用 4 楼 vampire_ycq 的回复:

引用 2 楼 wuyq11 的回复:
string sql = "update users set [username]=@username,[password]=@password where [id]=@id";
注意参数顺序


还别说,我以前写从来没有加上 [] 咋没报错呢

那是因为你没有涉及到SQL保留关键字
[/Quote]
楼上正解
emma_ren 2010-09-25
  • 打赏
  • 举报
回复
学习了,哈哈
wanggenhu0 2010-09-25
  • 打赏
  • 举报
回复
学习了,哈哈
sjyhcx 2010-09-25
  • 打赏
  • 举报
回复
学习了,哈哈
wupeng7654111 2010-09-25
  • 打赏
  • 举报
回复
好像是在用OleDb的时候,要特别注意关键字的问题。
jianshao810 2010-09-25
  • 打赏
  • 举报
回复
[]多有用,啥名字都可以让他变成列名==
hongjiaoli 2010-09-25
  • 打赏
  • 举报
回复
update [users] set [username]=@username,[password]=@password where [id]=@id
关键字问题。
Purple_Sky2010 2010-09-25
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wuyq11 的回复:]

string sql = "update users set [username]=@username,[password]=@password where [id]=@id";
注意参数顺序
[/Quote]

学习。。。。。。。。。
纯唇Yu弄 2010-09-24
  • 打赏
  • 举报
回复
都让你们说完了
zagj11 2010-09-24
  • 打赏
  • 举报
回复
学习了。。。哈哈。。
风之影子 2010-09-24
  • 打赏
  • 举报
回复
最好不用系统保留字和关键字。作为参数的名字。
编程爱好者L 2010-09-24
  • 打赏
  • 举报
回复
字段如果是关键字,它的颜色是不一样的,所以要加上[],自己放到数据库上看一下就可以了
zhangby1 2010-09-24
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 vampire_ycq 的回复:]

引用 2 楼 wuyq11 的回复:
string sql = "update users set [username]=@username,[password]=@password where [id]=@id";
注意参数顺序


还别说,我以前写从来没有加上 [] 咋没报错呢
[/Quote]
那是因为你没有涉及到SQL保留关键字
倒霉熊 2010-09-24
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wuyq11 的回复:]
string sql = "update users set [username]=@username,[password]=@password where [id]=@id";
注意参数顺序
[/Quote]

还别说,我以前写从来没有加上 [] 咋没报错呢
zhangby1 2010-09-24
  • 打赏
  • 举报
回复
string sql = "update [users] set [username]=@username,[password]=@password where [id]=@id";
这样应该不会有问题
如果不行那就是字段错误或者表名错误
wuyq11 2010-09-24
  • 打赏
  • 举报
回复
string sql = "update users set [username]=@username,[password]=@password where [id]=@id";
注意参数顺序
st_song_tao 2010-09-24
  • 打赏
  • 举报
回复
OK了 关键字的问题,……
加上【】就没事了

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧