OS X机器上的pyodbc错误?

时间:2015-12-16 05:17:45

标签: python macos pyodbc

我试图在我的OS X机器上使用pyodbc和python访问远程MS-SQL数据库。当我尝试执行时,它会显示如下错误

Error: ('IM002', '[IM002] [unixODBC][Driver Manager]Data source name not found, and no default driver specified (0) (SQLDriverConnect)')

我写的代码是:

import pyodbc

def createdatabase():
    driver = 'SQL Server'
    server = '00000000'
    db1 = 'Vodafone'
    tcon = 'yes'
    uname = 'user'
    pword = 'pwd'

    cnxn = pyodbc.connect(driver='{SQL Server}', host=server,database=db1,trusted_connection=tcon, user=uname, password=pword)
    cursor = cnxn.cursor()

1 个答案:

答案 0 :(得分:0)

这可能不是你唯一的问题,但是pyodbc.connect()字符串需要用这样的分号组成:

DRIVER={FreeTDS};SERVER=yoursqlserver.com;PORT=1433;DATABASE=yourdb;UID=youruser;PWD=yourpass;TDS_Version=7.2;

您还必须阅读有关从Mac设置FreeTDS和unixODBC的信息。如果您正在指定SQL Server而不是FreeTDS,我猜你还没有在freetds.conf,odbc.ini和odbcinst.ini中设置配置,这是连接到SQL Server所必需的。来自非Windows机器。