我一直在尝试使用FreeTDS和UnixODBC与本地硬盘驱动器上的MS Access数据库建立连接。我的最终目标是通过 RODBC 在 R 中打开连接,并实现一些为此特定数据库开发的 SQL 脚本来提取数据。我遵循了此页面的建议(如何在带有unixodbc和freetds的Mac OS X Yosemite上安装RODBC?(,但仍然遇到问题。
当我在终端中实现 isql 时,我收到以下错误消息。
[S1000][unixODBC][FreeTDS][SQL Server]Unable to connect to data source
[01000][unixODBC][FreeTDS][SQL Server]Unknown host machine name.
[ISQL]ERROR: Could not SQLConnect
我假设我的错误在于我如何在各种安装文件中识别主机,如下所示。
freetds.conf
[global]
; tds version = 8.0
; dump file = /tmp/freetds.log
; debug flags = 0xffff
; timeout = 10
; connect timeout = 10
text size = 64512
[my_db]
# insert the actual host below
host = My_computer_name.local
port = 1433
tds version = 8.0
ODBC.ini
[my_db]
Driver = MSSQL
Servername = My_computer_name.local
Port = 1433
Database = /filepath_to_db/my_db.mdb
TDS_Version = 8.0
奥迪辛斯特.ini
[MSSQL]
Description = Microsoft SQL Server driver
Driver = /usr/local/Cellar/freetds/1.00.39/lib/libtdsodbc.so
Setup = /usr/local/Cellar/freetds/1.00.39/lib/libtdsodbc.so
FreeTDS用于连接到Microsoft SQL Server和Sybase数据库。它不是为与Microsoft Access 数据库一起使用而设计的。