我在Linux(Ubuntu 8.10)机器上有一个Perl脚本,我需要将数据写入SQL Server数据库。我一直在尝试使用DBD :: ODBC模块,但我无法连接它。我在哪里可以获得用于ODBC连接的免费/开源驱动程序,还是有其他方法可以从Linux上的Perl执行此操作?
答案 0 :(得分:9)
我使用unixODBC,freeTDS(这是驱动程序)和DBD :: ODBC的堆栈连接到SQL Server 2005。
安装这些组件后,编辑/etc/unixODBC/odbc.ini,如下所示:
[DNS]
Description = my database
Driver = /usr/lib/libtdsodbc.so #path to freeTDS driver
Server = ServerName
Database = DatabaseName
Port = 1433 #sql server default port
TDS_Version = 9.0 #9.0 is sql server 2005
try domain login = yes
try server login = yes
nt domain = DOMAIN
如果一切顺利,您应该可以连接:
$dbh = DBI->connect('dbi:ODBC:DNS', "userName", "passWord");
祝你好运!
答案 1 :(得分:5)
使用DBD::Sybase模块,Sybase和MS SQL Server共享一个公共代码库。
您可能还想调查开源FreeTDS库。请参阅FreeTDS常见问题解答问题“Which Perl library should I use”。