首页 > 解决方案 > 将 Python 脚本连接到 SQL Server

问题描述

我想将我的 python 脚本连接到 SQL 服务器:

import pyodbc

conn=pyodbc.connect('Driver=SQL_Server;Server=SQLEXP;user=44;DB=test)

我收到以下错误:

('28000', '[28000] [Microsoft][SQL Server Native Client 11.0][SQL Server]用户登录失败。(18456) (SQLDriverConnect);

[28000] [Microsoft][SQL Server Native Client 11.0][SQL Server]无法打开登录请求的数据库“测试”。登录失败。(4060);[28000] [Microsoft][SQL Server Native Client 11.0]无效的连接字符串属性(0);

我在博客上浏览了其他关于此的帖子,但没有找到解决方案。

在 python 连接到 SQL Server 时找不到提供程序错误

pyodbc-data-source-name-not-found-and-no-default-driver-specified

使用 Python 连接到 Microsoft SQL 服务器

标签: pythonsql-serverconnection

解决方案


Steve-o169's上面的评论之后(下面是一个简单的实现):

如果使用SQL Server 身份验证,您可以这样做:

import pyodbc
import pandas as pd

cnxn = pyodbc.connect("Driver={SQL Server};"
                        "Server=yourServerName;"
                        "Database=yourDatebaseName;"
                        "uid=yourUserName;pwd=yourPassword")

query="SELECT TOP(10) * FROM yourTable"

df = pd.read_sql_query(query, cnxn)

对于Windows 身份验证,我使用了以下内容:

import pyodbc
import pandas as pd

cnxn = pyodbc.connect("Driver={SQL Server};"
                        "Server=yourServerName;"
                        "Database=yourDatebaseName;")

query="SELECT TOP(10) * FROM yourTable"

df = pd.read_sql_query(query, cnxn)

推荐阅读