Python(Windows)中的SQL Connect错误:严重性9:\n适配器服务器连接失败
无法连接到Azure DB。我在通过Python连接时遇到以下错误 我能够连接到常用的SQL环境Python(Windows)中的SQL Connect错误:严重性9:\n适配器服务器连接失败,python,sql,database,azure,Python,Sql,Database,Azure,无法连接到Azure DB。我在通过Python连接时遇到以下错误 我能够连接到常用的SQL环境 import pandas as pd import pymssql connPDW = pymssql.connect(host=r'dwprd01.database.windows.net', user=r'internal\admaaron',password='',database='') connPDW.autocommit(True) cursor = connPDW.cursor()
import pandas as pd
import pymssql
connPDW = pymssql.connect(host=r'dwprd01.database.windows.net', user=r'internal\admaaron',password='',database='')
connPDW.autocommit(True)
cursor = connPDW.cursor()
conn.autocommit(True)
cursor = conn.cursor()
sql = """
select Top (10) * from TableName
"""
cursor.execute(sql);
运行时无错误。仅根据您的代码,存在一个明显的问题,即通过Python中的
pymssql
包连接Azure SQL数据库,该包使用不正确的用户格式,并且缺少密码
和数据库
参数的值
请仔细阅读官方文档以正确更改代码
如果您有一个连接字符串为ODBC的Azure SQL数据库实例,例如Driver={ODBC Driver 13 for SQL Server};服务器=tcp:。数据库.windows.net,1433;数据库=;Uid=@;Pwd=;加密=是;TrustServerCertificate=否;连接超时=30代码>显示在Azure portal上SQL数据库的连接字符串选项卡中
那么,您的代码应该如下所示
hostname = '<your hostname>'
server = f"{hostname}.database.windows.net"
username = '<your username>'
user = f"{username}@{hostname}"
password = '<your password>'
database = '<your database name>'
import pymssql
conn = pymssql.connect(server=server, user=user, password=password, database=database)
hostname=''
服务器=f“{hostname}.database.windows.net”
用户名=“”
user=f“{username}@{hostname}”
密码=“”
数据库=“”
导入pymssql
conn=pymssql.connect(服务器=服务器,用户=用户,密码=密码,数据库=数据库)
同时,Azure SQL数据库和MS SQL Server版本的附加说明是2008+
与最新的Azure SQL数据库一样,您应该使用ODBC驱动程序连接字符串,该字符串以Driver={ODBC Driver 17 for SQL Server}开头代码>,而不是Azure portal的连接字符串中显示的13
。如果将Python的ODBC驱动程序与pyodbc
一起使用,请参阅官方文档