大神啊,原谅我的无知吧!更新语句 where后面条件设成任意怎么着?

songhongzhe123 2012-04-26 03:33:11
事实是这个样子的。
我想对数据库里面更新,不管改哪行哪列都可以更新保存
然后我的更新语句
update Receipts set ReceiptDate='2011-1-1 0:00:00',Account='GH在',Branch='无锡',Customer='刘利珍',Type='现金',Purpose='',Amount='5260.0000',NonAllocate='1',ID='10'where ReportNo='1742'
我用update更新语句 但是我如果想更新 ReportNo 怎么办呢?

...全文
122 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
熙风 2012-04-27
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 的回复:]
引用 12 楼 的回复:

引用 9 楼 的回复:
搞笑,主键也更新?
要更新它就别把它当主键!
新加一列,弄个随机数当主键,OK。
一语惊醒梦中人 正解 正解 我这有主键

有主键那就用主键
[/Quote]

我靠,,这搞的我像有倒分的嫌疑,,,受宠若惊
Iamagril 2012-04-26
  • 打赏
  • 举报
回复
更新语句一般用主键当where条件好点
熙风 2012-04-26
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 的回复:]

引用 9 楼 的回复:
搞笑,主键也更新?
要更新它就别把它当主键!
新加一列,弄个随机数当主键,OK。
一语惊醒梦中人 正解 正解 我这有主键
[/Quote]
有主键那就用主键
songhongzhe123 2012-04-26
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 的回复:]
搞笑,主键也更新?
要更新它就别把它当主键!
新加一列,弄个随机数当主键,OK。
[/Quote]一语惊醒梦中人 正解 正解 我这有主键
songhongzhe123 2012-04-26
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 的回复:]
你可以在datagridview先隐藏一列,专门用于存放原来的ReportNo,然后修改的时候where后面的ReportNo就等于你隐藏列里的值,而公开的那列ReportNo,让用户去修改好了。
[/Quote]我设置了一个隐藏列 但是我一改原来的ReportNo 后那个ReportNo1也跟着自己改了?在我没有更新前。。。。
饕餮123 2012-04-26
  • 打赏
  • 举报
回复
ps:楼上的不妥,如果我改了之后,再改,你怎么更新?
饕餮123 2012-04-26
  • 打赏
  • 举报
回复
搞笑,主键也更新?
要更新它就别把它当主键!
新加一列,弄个随机数当主键,OK。
gogodiy 2012-04-26
  • 打赏
  • 举报
回复
你可以在datagridview先隐藏一列,专门用于存放原来的ReportNo,然后修改的时候where后面的ReportNo就等于你隐藏列里的值,而公开的那列ReportNo,让用户去修改好了。
songhongzhe123 2012-04-26
  • 打赏
  • 举报
回复
非得移帖才能解决?
songhongzhe123 2012-04-26
  • 打赏
  • 举报
回复
非得移帖才能解决?
songhongzhe123 2012-04-26
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 koumingjie 的回复:]
楼上正解,如果再次更新,需要重新查询ReportNo
[/Quote] 请看3# 我现在要做的不是手动查询数据库
如果我是在程序里 实现修改保存 我做的是实现修改datagridview 框里面的值 保存
我现在该怎么查呢?
孤独加百列 2012-04-26
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

update ...set ...., ReportNo='xxxx' where ReportNo='1742'
[/Quote]


更新列表里添加ReportNo就可以了
songhongzhe123 2012-04-26
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
update ...set ...., ReportNo='xxxx' where ReportNo='1742'
[/Quote]
我在程序里是这样写的
"update Receipts set ReceiptDate='" + a1 + "',Account='" + a2 + "',Branch='" + a3 + "',Customer='" + a4 + "',Type='" + a5 + "',Purpose='" + a6 + "',Amount='" + a7 + "',NonAllocate='" + a8 + "',ID='" + a9 + "'where ReportNo='" + a0 + "'"

按您那样说的话 我是不是该这样写?
"update Receipts set '" + a0 + "', ReceiptDate='" + a1 + "',Account='" + a2 + "',Branch='" + a3 + "',Customer='" + a4 + "',Type='" + a5 + "',Purpose='" + a6 + "',Amount='" + a7 + "',NonAllocate='" + a8 + "',ID='" + a9 + "'where ReportNo='" + a0 + "'"
???
koumingjie 2012-04-26
  • 打赏
  • 举报
回复
楼上正解,如果再次更新,需要重新查询ReportNo
迪迦凹凸曼 2012-04-26
  • 打赏
  • 举报
回复
update ...set ...., ReportNo='xxxx' where ReportNo='1742'

110,534

社区成员

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

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

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