【发布时间】:2018-01-19 14:17:09
【问题描述】:
我有 2 台机器设置:
-
带有 Timesten 客户端 11.2.1 和 pyodbc==3.0.7 的 RDP 终端,运行良好。我使用这个连接字符串:
cnxn = pyodbc.connect('DSN=myhostip;UID=myusername;PWD=mypass')
带有 Timesten 客户端 11.2.2 和 pyodbc==4.0.22 的本地计算机(我也尝试过旧版本,例如 3.0.7) 当我使用连接字符串时: cnxn = pyodbc.connect('DSN=myhostip1;UID=myusername1;PWD=mypass1') 我收到此错误: pyodbc.Error: ('HY010', u'[HY010] [Microsoft][ODBC Driver Manager] 驱动无法支持当前环境属性。(0) (SQLDriverConnect)')。
两台机器上的两个数据库实际上是一样的,所以区别只是timesten驱动版本。 或者还有什么问题? 我在两台机器上都设置了 DSN,并在 SQLDeveloper 中连接到它们。
我尝试了不同的 timesten 客户端和 pyodbc 版本,但每次都出现相同的错误。 这是我所知道的连接到 Timesten DB 的唯一方法,谁能帮我解决这个错误,或者告诉我除了 pyodbc 之外的另一种连接方式吗?
【问题讨论】:
-
根据您的操作,cx_Oracle 接口可能可用,尽管这不是经过测试的配置。
-
是的,我使用 cx_Oracle 连接其他数据库,而不是 Timesten 数据库,您能告诉我怎么做吗?我试过这种方式:conn= cx_Oracle.connect('user','pass','17.1.17.1:53397'),但出现错误:cx_Oracle.DatabaseError: ORA-12547: TNS:lost contact。我想我需要在参数中指出时间驱动程序的路径/或名称?
-
我已经成功通过 jaydebeapi 连接到 timesten 数据库: conn = jaydebeapi.connect("com.timesten.jdbc.TimesTenConnection","jdbc:timesten:client:dsn=myhost",{'用户': "SA", '密码':"mypass"},"c:\TimesTen\tt1122_64\lib\ttjdbc5.jar",)
标签: python oracle pyodbc timesten