ruby和accdb(ms访问)

Dav*_*hme 10 ruby ms-access windows-xp

如果我有一个基本的windows xp系统,ruby和一个ms access 2007文件(例如c:/foo/bar.accdb)文件,那么读取.accdb文件的侵入性最小的方法是什么.

  • 需要在xp系统上安装什么.
  • 什么是特定的连接字符串.

Kev*_*nen 10

这些方面的东西应该让你开始.当然,你需要修改一些值,比如; 路径,文件名,SQL语句等

使用Jet引擎的MDB文件(Access 2003格式和更旧版本)

require 'win32ole'
connection = WIN32OLE.new('ADODB.Connection')
connection.Open('Provider=Microsoft.Jet.OLEDB.4.0;
                 Data Source=c:\path\filename.mdb')
Run Code Online (Sandbox Code Playgroud)

使用ACE引擎的ACCDB文件(Access 2007格式和更新版本)

require 'win32ole'
connection = WIN32OLE.new('ADODB.Connection')
connection.Open('Provider=Microsoft.ACE.OLEDB.12.0;
                 Data Source=c:\path\filename.accdb')
Run Code Online (Sandbox Code Playgroud)

要执行不返回数据的SQL查询,请使用:

connection.Execute("INSERT INTO Table VALUES ('Data1', 'Data2');")
Run Code Online (Sandbox Code Playgroud)

要执行返回记录集的查询:

recordset = WIN32OLE.new('ADODB.Recordset')
recordset.Open(SQLstatement, connection)
Run Code Online (Sandbox Code Playgroud)


Arn*_*aud 6

你可以使用Ruby库Sequel(http://sequel.rubyforge.org/documentation.html),它有ADO适配器