用SQL查询语句更新ACCESS数据库,怎么更新不了啊

woshihuzi 2003-08-24 01:01:56
定义变量如下:
Public Cn As Connection
Public rs As Recordset
假设rs当中已经有了一些记录,用datagrid控件来反映rs的变化情况。我用了如下的更新语句:
Dim str As String
Dim number As Long
number = rs("No")

str = "Update " & TableDictName & " Set " & _
"No=" & Val(Text_No.Text) & "," & _
"W_C='" & Text_W_C.Text & "'," & _
"G_C='" & Text_G_C.Text & "'," & _
"E_C='" & Text_E_C.Text & "'," & _
"W_E='" & Text_W_E.Text & "'," & _
"G_E='" & Text_G_E.Text & "'," & _
"E_E='" & Text_E_E.Text & "'," & _
"DEF='" & Text_DEF.Text & "'," & _
"FIRST_SEM='" & Text_FIRST_SEM.Text & "' " & _
"where No=" & number

Cn.Execute str
str="select * from dict"
set rs=cn.Execute str
Set Form_main.DataGrid.DataSource = rs

执行该程序段之后,发现应该得到修改的记录的相应字段没有变化。不知道为什么,请各位大虾指点。我想问题是不是出在where 语句之后的long类型的变量身上,因为当我用字符型的条件放在where之后的时候,就能得到正确的修改。

...全文
216 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
woshihuzi 2003-08-24
  • 打赏
  • 举报
回复
planetike(阿胜)兄、Kyle_Chen() 兄,谢谢两位兄台对该问题的关注。后来我请教高手,终于解决了这个问题,事实上,数值型的字段放在where之后,要用方括号把字段名称括起来,这样就好了。最后一行可以修改为:
"where [No]=" & number




胡子
Kyle_Chen 2003-08-24
  • 打赏
  • 举报
回复
跟踪一下,在执行完那条语句之后,查看数据库是否已经修改。
woshihuzi 2003-08-24
  • 打赏
  • 举报
回复
把最后一行改成如下形式,均能执行程序,但是都不能完成修改操作,楼上还有别的高招么?我头疼死了。
"where No=" & number ' 这一句不行
"where No=" & str(number) ' 这一句不行
"where No=" & Trim(str(number)) ' 这一句不行
"where No=val('" & Trim(str(number)) & "')" ' 这一句不行
planetike 2003-08-24
  • 打赏
  • 举报
回复
str = "Update " & TableDictName & " Set " & _
"No=" & Val(Text_No.Text) & "," & _
"W_C='" & Text_W_C.Text & "'," & _
"G_C='" & Text_G_C.Text & "'," & _
"E_C='" & Text_E_C.Text & "'," & _
"W_E='" & Text_W_E.Text & "'," & _
"G_E='" & Text_G_E.Text & "'," & _
"E_E='" & Text_E_E.Text & "'," & _
"DEF='" & Text_DEF.Text & "'," & _
"FIRST_SEM='" & Text_FIRST_SEM.Text & "' " & _
"where No=" & trim(str(number))'不行就转一下吧.
woshihuzi 2003-08-24
  • 打赏
  • 举报
回复
str = "update dict set W_C='*****' where W_C='111111'"
如果用这个语句,那么应该更新的记录都能得到更新,难道不是where语句之后的数值型变量number的缘故?该怎么解决呢?都半夜了,我还在苦思冥想,希望得到帮助!!!!!!!!

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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