access窗体如何一次录入多条数据

access窗体如何一次录入多条数据,第1张

因为你没有给出表结构和窗体的具体要求,为了说明方便,做到示例一目了然:

1、表名称包括“测试表”,“作者”和“证书编码”两个字段。结构图如下:

2、窗体包括四个未绑定文本框(名称与对应标签同)和一个名为“保存数据”的按钮。如下图:

3、上图中录入显示的数据,然后点击“保存数据”按钮。“测试表”的数据变化如下:

4、窗体中“保存数据”按钮的【单击事件】代码为:

Private Sub 保存数据_Click()

On Error GoTo MyErr

' 定义变量并赋值

Dim i, m, n, k As Integer

Dim zsid As String

m = Val(Me.开始码)

n = Val(Me.结束码)

k = Len(Me.开始码)

' 检查数据录入是否正确

If IsNull(Me.作者) Or IsNull(Me.通用码) Or IsNull(Me.开始码) Or IsNull(Me.结束码) Then

    MsgBox "数据未保存!请把信息填写完整后重试...", 64 + 0 + 4096, "波涛工作室"

    Exit Sub

ElseIf k <> Len(Me.结束码) Then

    MsgBox "开始码与结束码位数不一致!请重新输入...", 64 + 0 + 4096, "波涛工作室"

    Exit Sub

ElseIf m > n Then

    MsgBox "开始码不能大于结束码!请重新输入...", 64 + 0 + 4096, "波涛工作室"

    Exit Sub

End If

' 开始保存数据

For i = m To n

    ' 计算并格式化证书编码

    zsid = Me.通用码 & Right(Left(Me.开始码, k - Len(m)) & i, k)

    ' 用INSERT语句写入数据

    CurrentDb.Execute "INSERT INTO 测试表 VALUES ('" & Me.作者 & "', '" & zsid & "')"

Next i

Exit Sub

' 发生未知错误后的处理

MyErr:

    MsgBox "错误类型:" & Err.Description, 64 + 0 + 4096, "波涛工作室"

End Sub

一条数据对应数据库中一行,由若干属性值组成的一行

窗体只是access的图形化管理界面而已,如果我没有理解错,你是想同时输入多条数据,然后点一次保存,都保存到数据库中是吧。这是不行的,因为没有必要,同时输入两条数据和一条一条输入,就省了一个点击保存按钮的时间,但是增加了保存算法的复杂度,所以ACCESS没有这个功能。

同时添加多条记录只能通过导入和用编程的方法

不同数据库之间略有不同,以几大主流数据库(oracle,sqlserver,mysql)为例

oracle(以插入三条为例),结尾分号不可省略,否则会报错。

insert into test values (1,'张三')

insert into test values (2,'李四')

insert into test values (3,'王五')

sqlserver(以插入三条为例),语法同oracle,但结尾分号可有可无。

mysql(以插入三条为例),语法同前两者,结尾分号不可省,但还有其他方法,代码如下:

insert into test values (1,'张三'),(2,'李四'),(3,'王五')


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9999814.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存