VB.NET的ExecuteNonQuery问题

wowangle0 2008-05-25 03:12:46
Conn.Open()
Dim StrAlter As String = "update 来访记录" & _
" set 被访人 ='" & TextBox1.Text & "'" & _
" , 关系 ='" & TextBox4.Text & "'" & _
" , 被访人寝室号 = '" & ComboBox2.Text & "'" & _
" , 证件名称 ='" & ComboBox1.Text & "'" & _
" , 证件号码 ='" & TextBox5.Text & "'" & _
" , 备注 ='" & TextBox6.Text & "'" & _
" where 来访人 ='" & Trim(TextBox1.Text) & "' and 来访时间 ='" & DateTimePicker1.Value & "'"
Try
Dim cmd As New SqlClient.SqlCommand(StrAlter, Conn)
If cmd.ExecuteNonQuery > 0 Then
MessageBox.Show("来访记录修改成功!", "提示!")
Else
MessageBox.Show("修改失败,请确认后重新操作", "提示", MessageBoxButtons.OK, MessageBoxIcon.Hand)
End If

Catch ex As Exception
MsgBox(ex.Message)
End Try
Conn.Close()

在执行到cmd.ExecuteNonQuery 这句的时候..就直接跳到Else;来了...
怎么回事,帮忙看看...调试了下...语法也没错啊..
不知道怎么就这样了...~
...全文
431 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
wowangle0 2008-05-25
  • 打赏
  • 举报
回复
嗯...问题解决了..
多谢各位了..
周公 2008-05-25
  • 打赏
  • 举报
回复
或许数据库里根本就没有满足你设置的where条件的记录。

将那个sql语句输出一下,放到查询分析器里执行看看。
amandag 2008-05-25
  • 打赏
  • 举报
回复
还有用拼接字符串写SQL语句是非常不可取的方式,最好用参数
hery2002 2008-05-25
  • 打赏
  • 举报
回复
还有你选择的值,是否在数据库里面有值,.
amandag 2008-05-25
  • 打赏
  • 举报
回复
在If cmd.ExecuteNonQuery > 0 Then 这句前输出一下你的StrAlter ,在数据库里测试是否正确
hery2002 2008-05-25
  • 打赏
  • 举报
回复
1.检查你的SQL能够在查询分析器里面运行,
看看你cmd里面的执行语句,是否有拼错了,

16,717

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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