在 Access DB 上执行 sql 脚本
Posted
技术标签:
【中文标题】在 Access DB 上执行 sql 脚本【英文标题】:Excuting sql sripts on a Access DB 【发布时间】:2009-05-14 14:35:03 【问题描述】:我有一个包含数百个 sql 查询的脚本,我需要在 Access DB 上执行这些查询。由于在 Access 中执行 sql 查询是 IMO 退出尴尬,您一次只能执行一个并且不识别以“--”开头的注释行,我想知道是否存在一种更简单的方法来做到这一点。 MS Access 是否有更好的替代方法来管理 Access 数据库?
【问题讨论】:
【参考方案1】:我建议编写一个应用程序或 PowerShell 脚本来从文件中读取查询并针对 Access 数据库执行。逐行阅读,忽略以注释分隔符开头的行。
【讨论】:
【参考方案2】:两个不错的选择:
选项 1:编写一个 C# 程序,该程序将使用 DAO 库来自动化 Access 并以编程方式执行语句。
dao.DBEngineClass dbengine = new dao.DBEngineClass();
dbengine.OpenDatabase(path, null, null, null);
dao.Database database = dbengine.Workspaces[0].Databases[0];
database.Execute(sql, null);
选项 2:在数据库中编写一个 VBA 模块,该模块将使用 CurrentProject.Connection.Execute()
方法执行相同的操作。
在任何一种情况下,您都可以将此代码放在一个循环中,该循环读取您的语句并逐个执行它们。
【讨论】:
【参考方案3】:如何设置从 MS-SQL 数据库到 access 数据库的链接并通过 MS-SQL 运行脚本?假设您没有更改表结构,您应该没问题。
【讨论】:
以上是关于在 Access DB 上执行 sql 脚本的主要内容,如果未能解决你的问题,请参考以下文章
LINUX下shell脚本如何执行 sql脚本 到DB2数据库?