如何使用Python(Pandas)打开SQL Server .mdf文件

时间:2018-11-14 19:32:58

标签: python sql pandas pyodbc mdf

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

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

它给我错误信息

OperationalError :(“ 08001”,“ [08001] [Microsoft] [ODBC SQL Server驱动程序]既不提供DSN也不提供SERVER关键字(0)(SQLDriverConnect)”)

我发现了另一个类似的问题,但是也没有得到回答。我也一直找不到很好的教程来开始将Python和sql数据库一起使用。让我知道我是否可以提供其他信息。预先感谢。

1 个答案:

答案 0 :(得分:0)

  

我的桌面上有一个mdf文件,无法用python打开该文件。

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

仅安装SQL Server Express Edition,附加.mdf文件,然后照常访问数据库,对您来说可能会更容易。

或者,您可以使用如下代码来代替将.mdf文件手动附加到SQL Server实例:

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)