我有一臺FileMaker數據庫在Mac Mini上的FileMaker Server 14上運行,我試圖用pyodbc來獲取它。它進展不順利。用pyodbc連接到FileMaker服務器
首先,是什麼在起作用:
telnet 192.169.19.3 2399
ssh [email protected]
tsql -H FM-Server -p 2399 -U Name -P pwd
一個有關最後一個奇怪的是,它給了我一個秒計數器:
1
2
沒有提示,但我仍然可以輸入命令我不知道這意味着什麼,也找不到任何有關它的信息。現在
,什麼行不通:
tsql -LH 192.169.19.3
tsql -LH FM-Server
isql FM-Server Name pwd
沒有對服務器的FileMaker上市信息,ISQL給我[ISQL]ERROR: Could not SQLConnect
這僅僅是如此的幫助,你知道
一個問題是,在這一點上我「已經我是否應該使用FM ODBC或freetds的是我在pyodbc司機,幸運的是他們都沒有工作排序的遺忘:
>>> c = pyodbc.connect("DRIVER={FreeTDS};DSN=FM-Server;UID=Name;PWD=pwd")
pyodbc.Error: ('08001', '[08001] [unixODBC][FreeTDS][SQL Server]Unable to connect to data source (0) (SQLDriverConnect)')
>>> c = pyodbc.connect("DRIVER={FileMaker ODBC};DSN=FM-Server;UID=Name;PWD=pwd")
pyodbc.Error: ('08S01', '[08S01] [unixODBC][FileMaker][FileMaker ODBC] Failed to connect to listener (2) (65535) (SQLDriverConnect)')
給它只是DSN凍結窗口。這是我的配置:
odbc.ini | /usr/local/Cellar/unixodbc/2.3.4/etc/odbc.ini
[FM-Server]
Driver = FreeTDS
Host = 192.169.19.3
ServerName = FM-Server
UID = Name
PWD = pwd
Port = 2399
ODBCINST.INI | /usr/local/Cellar/unixodbc/2.3.4/etc/odbcinst.ini
[ODBC Drivers]
FileMaker ODBC = Installed
FreeTDS = Installed
[FileMaker ODBC]
Driver = /Library/ODBC/FileMaker ODBC.bundle/Contents/MacOS/fmodbc.so
Setup =
[FreeTDS]
Description = FreeTDS
Driver = /usr/local/Cellar/freetds/1.00.9/lib/libtdsodbc.0.so
Setup = /usr/local/Cellar/freetds/1.00.9/lib/libtdsodbc.0.so
UsageCount = 1
freetds.conf | /usr/local/Cellar/freetds/1.00.9/etc/freetds.conf
[FM-Server]
host = 192.169.19.3
port = 2399
tds version = 8.0
的任何信息都很多幫助我得到這甚至遠遠讚賞,並喊資源here,here,和其他地方。
您一定需要使用FileMaker ODBC驅動程序。 FreeTDS適用於Microsoft SQL Server和Sybase。 –
謝謝,當我回到試驗機,但是,在此期間,我會更新這個問題,你知道我怎麼可以指向pyodbc從http://www.odbcmanager.net/ ODBC驅動程序管理器應用程序? – brnco
ODBC管理器應用程序大概是更新ODBC .ini文件內容的便捷方式。您可以使用它創建使用「FileMaker ODBC」驅動程序的DSN條目,並將該DSN寫入odbc.ini。然後pyodbc將使用該DSN來連接,例如, 'cnxn = pyodbc.connect(「DSN = MyFileMakerDSN;」)'。請注意,爲連接使用DSN時,連接字符串中只需要DSN * name *,因爲其他屬性(驅動程序,服務器,數據庫...)是在DSN條目(在odbc.ini中)中定義的。 –