2016-09-29 253 views
2

我想用python通过pyodbc连接到Oracle数据库。我已经安装了Oracle驱动程序,我尝试下面的脚本:使用pyodbc连接到Oracle数据库

import pyodbc 
connectString = """ 
       DRIVER={Oracle in OraClient12Home1}; 
       SERVER=some_oracle_db.com:1521; 
       SID=oracle_test; 
       UID=user_name; 
       PWD=user_pass 
       """ 
cnxn = pyodbc.connect(connectString) 

,我得到了以下错误消息:

cnxn = pyodbc.connect(connectString) 

Error: ('HY000', '[HY000] [Oracle][ODBC][Ora]ORA-12560: TNS:protocol adapter error\n (12560) (SQLDriverConnect)') 

有什么不对吗?

回答

0

看起来像你缺少PORT

尝试这种方式

注: 根据您的服务器上的语法可能不同,这会为Windows上工作,而无需使用SQL Server驱动程序DSN。

connectString = pyodbc.connect('DRIVER={SQL Server};SERVER=localhost;PORT=1433;DATABASE=testdb;UID=me;PWD=pass') 

这是连接,你仍然需要一个光标,并使用与SQL语句执行沿..

0

您必须指定在连接字符串中的服务器或主机名(或IP地址为数据库服务器正在运行。