Office中国论坛/Access中国论坛

标题: UPDATE语句的语法错误,请问错在哪里?请师傅们请教! [打印本页]

作者: jsf2008    时间: 2009-8-20 17:26
标题: UPDATE语句的语法错误,请问错在哪里?请师傅们请教!
Option Compare Database
Dim I As Integer
Dim a As Integer

Private Sub 确定_Click()
I = Me.Frm_nka.Form.CurrentRecord
Dim Strsql0 As String
Dim Strsql1 As String
Strsql0 = "UPDATE nka SET Y/N =" & Me![Y/N] & ",KJZG =" & Me![KJZG] & ",FKRQ =" & Me![FKRQ] & " WHERE NO=" & Me![NO]
Strsql1 = "DELETE NO FROM nka WHERE NO=" & Me![NO]
If a = 1 Then
   CurrentProject.Connection.Execute Strsql0
   Me.Frm_nka.Form.Requery
   MsgBox "已成功修改资料", vbInformation, "提示"
   Me.Frm_nka.Form.Recordset.Move I
End If
If a = 2 Then
  CurrentProject.Connection.Execute Strsql1
  Me.Frm_nka.Form.Requery
  MsgBox "已成功删除资料", vbInformation, "提示"
  If I <> 1 Then
     Me.Frm_nka.Form.Recordset.Move I - 1
  End If
End If
a = 0
Call FrmEnabled
End Sub
Private Sub 删除_Click()
a = 2
Call FrmEnabled
End Sub

Private Sub 修改_Click()
a = 1
Call FrmEnabled
End Sub
Private Sub Form_Load()
Call FrmEnabled
End Sub
Public Sub FrmEnabled()
Select Case a
Case Is = 0
   Me.删除.Enabled = True
   Me.修改.Enabled = True
   Me.修改.SetFocus
   Me.确定.Enabled = False
   
   Me.FKRQ.Locked = True
   Me.KJZG.Locked = True
   Me.Y_N.Locked = True
Case Is = 1
   Me.确定.Enabled = True
   Me.删除.Enabled = False
   Me.确定.SetFocus
   Me.修改.Enabled = False
   
   Me.FKRQ.Locked = False
   Me.KJZG.Locked = False
   Me.Y_N.Locked = False
Case Is = 2
   Me.确定.Enabled = True
   Me.修改.Enabled = False
   Me.确定.SetFocus
   Me.删除.Enabled = False
   
   Me.FKRQ.Locked = True
   Me.KJZG.Locked = True
   Me.Y_N.Locked = True
End Select
End Sub
作者: Henry D. Sy    时间: 2009-8-20 17:59
确定按钮不可用,不好测试。
作者: jsf2008    时间: 2009-8-20 20:53
先点修改就可以点确定了.各位版主帮帮忙好不好?求求你们了
作者: Henry D. Sy    时间: 2009-8-20 21:04
Strsql0 = "UPDATE nka SET Y/N =" & Me![Y/N] & ",KJZG ='" & Me![KJZG] & "',FKRQ =#" & Me![FKRQ] & "# WHERE NO=" & Me![NO]
作者: jsf2008    时间: 2009-8-21 08:26
4#师傅,你测试过吗?我复制过来测试还是一样的,请求师傅们帮帮忙
作者: jsf2008    时间: 2009-8-21 08:27
#加上去代表什么?
作者: djt    时间: 2009-8-21 09:10
Strsql0 = "UPDATE nka SET Y/N =" & Me![Y/N] & ",KJZG ='" & Me![KJZG] & "',FKRQ =#" & Me![FKRQ] & "# WHERE NO=" & Me![NO]
字符需要',日期需要#,
作者: aslxt    时间: 2009-8-21 09:45
Strsql0 = "UPDATE nka SET Y/N =" & Me![Y/N] & ",KJZG ='" & Me![KJZG] & "',FKRQ =#" & Me![FKRQ] & "# WHERE NO=" & Me![NO]
字符需要',日期需要#,
djt 发表于 2009-8-21 09:10

我也按你的方法测试过,有时可以更新,有时提示更新成功,单表中数据又没有更新,问题还在查找,不知你们测试中有无同样问题?
作者: jsf2008    时间: 2009-8-21 10:33
我也是一样的,删掉记录成功了,原表的类型改成数字就可以了,现在就是修改不了?原记录不会改变
作者: djt    时间: 2009-8-21 10:48
基本功不扎实,字段名最好不要用特殊符号Y/N要[Y/N]
作者: jsf2008    时间: 2009-8-21 10:54
我改试试?
作者: jsf2008    时间: 2009-8-21 11:21
谢谢师傅的提醒,谢谢各位师傅!!!




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3