注意:這是一個轉發。此問題之前因爲未公開的原因而被刪除SQL Server和Rails的問題
好的,我一直在努力讓這個工作像現在一整天,而我幾乎沒有任何進一步離開時。
我想讓Ruby On Rails連接到SQL Server。我已經安裝了unixODBC,並配置了它和FreeTDS,並安裝了幾乎所有與存在的ODBC相關的Ruby gem。
(這已更新顯示ISQL與-v輸出)
所以,你可以看到,TSQL的作品,而不是在isql。兩者有什麼不同呢?
/etc/odbc.ini
[AVP1]
Description = ODBC connection via FreeTDS
Driver = TDS
Servername = my.server
UID = sa
PWD = pass
port = 1232
Database = mydatabase
/etc/odbcinst.ini
[TDS]
Description = v0.6 with protocol v7.0
Driver = /usr/lib/libtdsodbc.so
Setup = /usr/lib/libtdsS.so
CPTimeout =
CPReuse =
FileUsage = 1
(是的,我確信存在.so
文件)
的freetds.conf中的相關部分
[AVP1]
host = my.server
port = 1232
tds version = 8.0
終於,我的database.yml
development:
adapter: sqlserver
mode: odbc
dsn: AVP1
username: sa
password: pass
任何人都可以請幫助我,我拉之前的所有我的頭髮?
我使用的是完全最新的64位Arch Linux。
什麼可能導致isql失敗。我已經嘗試了迄今爲止所見到的針對此問題的每個解決方案,但其中沒有一個實際上適合我。我必須重新編譯FreeTDS或其他東西嗎?
好吧,我也驗證與strace的,它是找到的配置文件,如本摘錄:
open("/etc/odbc.ini", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=159, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fc71fe09000
read(3, "[AVP1]\n Description = ODBC "..., 4096) = 159