如何使用 Python (pandas) 打开 SQL 服务器 .mdf 文件

How to open a SQL Server .mdf file with Python (pandas)

我正在尝试打开已保存到桌面的 mdf sql 数据库文件。如何将其作为 pandas 数据框打开?到目前为止,我只有以下内容:

conn=pyodbc.connect(driver='{SQL Server}', dsn=filepath)

它给我错误信息

OperationalError: ('08001', '[08001] [Microsoft][ODBC SQL 服务器驱动程序]未提供 DSN 或 SERVER 关键字 (0) (SQLDriverConnect)')

我发现了另一个类似的问题,但也没有得到解答。我也一直无法找到一个很好的教程来开始使用 sql 数据库和 python 我对这个话题很陌生。如果我可以提供任何额外信息,请告诉我。提前致谢。

I have a mdf file on my desktop is there no way to just open that file in python.

嗯,是的,您可以将其作为二进制文件打开,但随后您需要编写代码以解释 文件的内容。换句话说,您需要对 SQL Server 用于将数据库对象写入 .mdf 文件的逻辑进行逆向工程。

安装 SQL Server Express Edition,附加 .mdf 文件,然后像往常一样访问数据库可能会更容易。

或者,您可以使用如下代码,而不是手动将 .mdf 文件附加到 SQL 服务器实例:

import pandas as pd
import pyodbc

cnxn_str = (
    r'DRIVER=ODBC Driver 11 for SQL Server;'
    r'SERVER=(local)\SQLEXPRESS;'
    r'Trusted_Connection=yes;'
    r'AttachDbFileName=C:\Users\Gord\Desktop\zzz.mdf;'
)
cnxn = pyodbc.connect(cnxn_str)
df = pd.read_sql("SELECT * FROM Table1", cnxn)