2009-12-09 84 views
5

我在Linux(Ubuntu 8.10)機器上有一個Perl腳本,我需要將數據寫入SQL Server數據庫。我一直在嘗試使用DBD :: ODBC模塊,但無法連接。我在哪裏可以獲得用於ODBC連接的免費/開源驅動程序,或者有另一種方法可以在Linux上通過Perl來實現此目的?如何從Linux中的Perl腳本訪問SQL Server數據庫?

回答

9

我連接到SQL Server 2005,堆棧爲unixODBCfreeTDS(這是驅動程序)和DBD :: ODBC。

你安裝這些組件後,編輯/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"); 

祝你好運!

+0

根據http://www.freetds.org/userguide/choosingtdsprotocol.htm,您的評論可能是錯誤的。 – 2017-01-26 18:14:40

+0

@RobKinyon,不能肯定地說,因爲我很久沒有使用這個軟件堆棧了。但7年前,這些設置正在工作。 – Mark 2017-01-26 18:46:02