MS ACCESS中也可以运行SQL脚本文件
时 间:2017-11-09 21:08:48
作 者:Big Young ID:252 城市:襄阳
摘 要: MS ACCESS中利用自定义过程实现SQL脚本的运行。
正 文:
1、新建一个文本文件,每行一条SQL语句,其格式如以下示例所示:
Insert INTO 缺考信息 (XM,ZKZH,QKKM) values ("张丹丹","32061721400071","301");
Insert INTO 缺考信息 (XM,ZKZH,QKKM) values ("刘本华","32061721400089","301");
Insert INTO 缺考信息 (XM,ZKZH,QKKM) values ("柳小双","32061721400076","301");
Insert INTO 缺考信息 (XM,ZKZH,QKKM) values ("谢清靓","42061721300106","301");
Insert INTO 缺考信息 (XM,ZKZH,QKKM) values ("魏二丽","42061721300107","301");
Insert INTO 缺考信息 (XM,ZKZH,QKKM) values ("龚倩怡","42061721600318","301");
Insert INTO 缺考信息 (XM,ZKZH,QKKM) values ("江寒梦","42061721300129","301");
Insert INTO 缺考信息 (XM,ZKZH,QKKM) values ("邓兆俊","42061721300099","301");
Insert INTO 缺考信息 (XM,ZKZH,QKKM) values ("有雪梅","42061721300120","301A");
Insert INTO 缺考信息 (XM,ZKZH,QKKM) values ("刘立平","42061721300115","301");
Insert INTO 缺考信息 (XM,ZKZH,QKKM) values ("丁长荣","42061721300122","301A");
Insert INTO 缺考信息 (XM,ZKZH,QKKM) values ("肖瑞芳","42061721300130","301A");
Insert INTO 缺考信息 (XM,ZKZH,QKKM) values ("刘静坤","42061721300110","301A");
当然,这只是个示例,不一定语句都相同,只要是ACCESS支持的SQL语句就行了,只要一行一句就可以了。
2、把文本文件保存为名为sql.txt的文件,与运行代码的数据数据库放在同一个文件夹下,如果放在其它目录下,就必须修改VBA代码中的打开文件路径了。
3、打开数据库,按ALT+F11打开VBE窗口,插入一个标准模块,在代码窗口在输入以下VBA代码,只要其中一个子程序就可以了,因为这两个子程序的功能是一样的。
Dim vSql As Variant
Dim vSqls As Variant
Dim strSql As String
Dim intF As Integer
intF = FreeFile()
Open CurrentProject.Path & "\sql.txt" For Input As #intF
strSql = StrConv(InputB(LOF(intF), intF), vbUnicode) '含有中文
Close intF
vSql = Split(strSql, ";")
On Error Resume Next
For Each vSqls In vSql
CurrentDb.Execute vSqls
Next
End Sub
Public Sub ExecSQLScriptFile()
Dim TextLine As Variant
Dim intF As Integer
intF = FreeFile()
Open CurrentProject.Path & "\sql.txt" For Input As #intF ' 打开文件。
Do While Not EOF(intF) ' 循环至文件尾。
Line Input #intF, TextLine ' 读入一行数据并将其赋予某变量。
CurrentDb.Execute TextLine ' 在立即窗口中显示数据。
Loop
Close #intF ' 关闭文件。
End Sub
4、在VBE的立即窗口中输入子程序的名称,然后回车就会依次执行文本文件中的每条SQL语句,跟运行存储过程类似。
Access软件网QQ交流群 (群号:54525238) Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- 统计当月之前(不含当月)的记录...(03.11)
- 【Access Inputbo...(03.03)
- 按回车键后光标移动到下一条记录...(02.12)
- 【Access Dsum示例】...(02.07)
- Access对子窗体的数据进行...(02.05)
- 【Access高效办公】上月累...(01.09)
- 【Access高效办公】上月累...(01.06)
- 【Access Inputbo...(12.23)
- 【Access Dsum示例】...(12.16)

学习心得
最新文章
- 仓库管理实战课程(9)-开发往来单...(04.02)
- 仓库管理实战课程(8)-商品信息功...(04.01)
- 仓库管理实战课程(7)-链接表(03.31)
- 仓库管理实战课程(6)-创建查询(03.29)
- 仓库管理实战课程(5)-字段属性(03.27)
- 设备装配出入库管理系统;基于Acc...(03.24)
- 仓库管理实战课程(4)-建表操作(03.22)
- 仓库管理实战课程(3)-需求设计说...(03.19)
- 仓库管理实战课程(2)-软件背景和...(03.18)
- 仓库管理实战课程(1)-讲师介绍(03.16)