用于将表单中的数据添加到访问

时间:2018-02-27 16:01:05

标签: ms-access

CurrentDb.Execute "INSERT INTO convenati(conid, location, surname, firstname, middlename, phone, email, dob, sex, mstatus, status, violated, date)"&_
    "VALUES(" & Me.txtid & ", '" & me txtlocation & "','" & Me.txtsurname & "','" & Me.txtmiddlename & "','" & Me.txtfirstname & "','" & Me.txtphone & "','" & Me.txtemail & "','" & Me. txtdate &"','" &_ Me.cbogender &"','" &_ Me.cbomstatus &"','" &_ Me.cboviolated & "','" & Me.txtdate & "')"

我需要有关此代码的帮助。

我有一个名为convenati的表,一个名为formconvenati的表单和一个名为convenati subform的子表单。

在我的表格中我有这些字段:

  • conid
  • location
  • firstname
  • middlename
  • 电话
  • 电子邮件
  • DOB
  • MSTATUS
  • 状态
  • 违反
  • 数据。

帮助我

1 个答案:

答案 0 :(得分:0)

你的一些问题:

  • 您在)

  • 之后错过了一个空格
  • 如果表格中的任何字段是字段类型 Date/Time ,则SQL应该在日期周围#而不是' }

  • 仔细检查您在查询前半部分列出的字段数,以及您要添加的数据(在查询的后半部分)。其中一个缺少

  • .之后遗失me.

  • Option Explicit放在模块顶部(第一行)以帮助查找&修复未声明/错误处理的变量,对象等。

  • 假设您没有像示例中那样将它们全部挤压在一起,但是如果这样做,请删除除行尾之外的所有_

    CurrentDb.Execute "INSERT INTO convenati(conid, location, surname, firstname, " & _
      "middlename, phone, email, dob, sex, mstatus, status, violated, date) " & _
      "VALUES(" & Me.txtid & ", '" & Me.txtlocation & "','" & Me.txtsurname & _
      "','" & Me.txtmiddlename & "','" & Me.txtfirstname & "','" & Me.txtphone & _
      "','" & Me.txtemail & "','" & Me.txtdate & "','" & Me.cbogender & "','" & _
      Me.cbomstatus & "','" & Me.cboviolated & "','" & Me.txtdate & ") "
    

此外,您在问题datedata中列出的最后一个字段是?

......所有这些事情的共同点是缺乏对细节的关注。 “关闭”不计入编码。

解决VBA中使用的SQL问题的一种方法是在实际查询中测试语句的实际SQL输出。

使用上面的语句作为示例,将CurrentDb.Execute更改为Debug.Print,并使下一行说Stop。运行代码,当它在Stop处中断时,按 Ctrl + G 打开立即窗口,然后查看完整的SQL。 / p>

如果仍然无法找到问题,请将该输出复制并粘贴到空白查询中(在SQL视图中)并尝试运行查询。它也不会在那里运行,然后你需要开始删除部件以简化查询,通过消除过程进行故障排除。

我不知道每个表单控件的值是什么,也不知道表中每个字段的数据类型是什么,因此我将它们全部替换为___并得到:

INSERT INTO convenati (conid, location, surname, firstname, middlename, 
    phone, email, dob, sex, mstatus, status, violated, date) VALUES(___, 
    '___','___','___','___','___','___','___','___','___','___','___') 

更多debugging tips here