我有一个.accdb文件(来自Microsoft Access),该文件将连接到ODBC数据库并读取我的Ruby文件(C:/Documents/foo.rb)中的数据
[如果需要此信息,我正在使用Windows 10和MS Access 2010,并希望连接到.accdb文件]
在this website: Connection Strings中,我找到了这段代码,但它不在Ruby中:
Driver={Microsoft Access Driver (*.mdb, *.accdb)};Dbq=C:\mydatabase.accdb;
Uid=Admin;Pwd=;
从this stackoverflow question开始,有人用Ruby提供了出色的代码,但它使用的是ACE引擎而不是ODBC:
require 'win32ole'
connection = WIN32OLE.new('ADODB.Connection')
connection.Open('Provider=Microsoft.ACE.OLEDB.12.0;
Data Source=c:\path\filename.accdb')
此Stackflowquestion使用JET引擎(也在Ruby中):
require 'sequel'
Dir['*.mdb'].each{|mdb|
print "Check #{mdb}"
@db = Sequel.ado(:conn_string=>"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=#{mdb}")
begin
@db.test_connection
puts " ok"
rescue Sequel::DatabaseConnectionError
puts " error"
end
}
我觉得我已经很接近要找到连接字符串了,但是我已经上网了,无法改善已有的内容。我非常感谢Ruby中的连接来连接ODBC数据库中的.accdb文件。