我正在将一个 Python 程序从装有 Microsoft SQL Studio 18 的 Windows 笔记本电脑切换到树莓派,这样我就可以保持它 24/7 运行。在笔记本电脑上,使用 pyodbc 连接到本地 Microsoft SQL Server 工作得很好,但在树莓派上,它不起作用。我首先必须将 pyodbc 切换为 pypyodbc,因为 pyodbc 的 pip 安装存在问题。然后,我将数据库复制为 .sql 文件,并使用 SQLite3 将其转换为 .db 文件。但是,pypyodbc.connect() 函数中建议的 SQLite3 驱动程序值
Driver=SQLite3 ODBC Driver
会引发错误
('01000', "[01000] [unixODBC][驱动程序管理器]无法打开 lib 'SQLite3 ODBC Driver': 文件未找到")
我不知道如何解决这个问题。我尝试下载适用于 Linux Debian 9 的 Microsoft SQL Server,但找不到 msodbcsql18 库。我尝试安装 FreeTDS ODBC,但由于某种原因,我的终端无法识别 tsql 命令。我也无法找到这个神秘的“odbc.ini”。我一直在为这个转变中最微不足道的一步而烦恼,我需要帮助。您能告诉我的任何信息将不胜感激。
我会退一步问一下 ODBC 是否是从树莓派与 Sqlite3 交互的正确接口。 Python 应该附带一个 sqlite3 库作为其标准库的一部分,它应该是一个非常简单的替代品。
所以,而不是:
conn = pypyodbc.connect(<args)
你将会拥有
import sqlite3
conn = sqlite3.connect('/path/to/file/db')
该连接对象的工作方式应该与从 pypyodbc 获得的连接对象基本相同,假设该库遵循 DBAPI 标准,大多数 Python SQL 库都是这样做的。