【问题标题】:pymssql.connect() seems to ignore database string argumentpymssql.connect() 似乎忽略了数据库字符串参数
【发布时间】:2014-10-16 10:14:30
【问题描述】:

我在 Azure 中有 3 个数据库,我尝试连接到其中一个。

conn = pymssql.connect(server='hostname.database.windows.net',
                  user='username@hostname',
                  password='*****',
                  database='my_db',
                  timeout=0,
                  login_timeout=60,
                  charset='UTF-8',
                  as_dict=False,
                  host='',
                  port='1433')


cursor = conn.cursor()
cursor.execute('select db_name()')  #to get the name of my db (which should be "my_db")
result = cursor.fetchone()
print result

但我得到的是“master”,它是默认的 Azure 数据库。这不应该发生,因为我已经为“my_db”指定了“databse”字符串参数。

请指教。

【问题讨论】:

    标签: python sql azure pymssql


    【解决方案1】:

    您的问题是您的pymssql 版本。 pip上的最新版本是2.1.0,但支持azure的版本是2.1.1。 因此,如果您从源代码安装它,它将起作用。另外,确保你有freeTDS > 0.91

    【讨论】:

    • 您可能想详细说明为什么freeTDS 是附加要求。否则,欢迎来到 SO
    • pymssqlfreetds 的python 接口。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-01
    • 2015-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-25
    相关资源
    最近更新 更多