因为你没有给出表结构和窗体的具体要求,为了说明方便,做到示例一目了然:
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,'王五')欢迎分享,转载请注明来源:内存溢出
评论列表(0条)