python-3.x 在Windows中使用connectorx从sqlite3数据库读取SQL

m4pnthwp  于 2023-01-27  发布在  Python
关注(0)|答案(1)|浏览(129)

我试图建立一个到我的sqlite3数据库的连接,它位于我的笔记本电脑的硬盘上,我使用了https://sfu-db.github.io/connector-x/databases/sqlite.html中的以下示例代码:

import connectorx as cx
db_path = '/home/user/path/test.db'                         # path to your SQLite database
conn = 'sqlite://' + db_path                                # connection token
query = 'SELECT * FROM `database.dataset.table`'            # query string
cx.read_sql(conn, query)                                    # read data from SQLite

因为我使用的是Windows,所以数据库的路径包含一个冒号:

db_path = 'E:/my_db.db'
conn = 'sqlite://E:/my_db.db'

当我尝试执行cx.read_sql(conn, 'select * from tablename')时,我收到以下错误消息:*[2023-01- 21 T19:01:47 Z错误r2d2]无法打开数据库文件:E/我的数据库.数据库 *
这个错误消息的有趣之处在于它显示的数据库路径缺少冒号。它是E/my_db.db而不是E:/my_db.db。看起来像是一个bug。因此问题是:如何在Windows上建立到我的数据库的连接?

ijnw1ujt

ijnw1ujt1#

我得到了使用db_path = urllib.parse.quote(os.path.abspath(database_name))的提示,但它并没有真正帮助我。现在我得到了以下错误:
运行时错误:索引处的类型Text转换错误:11,尾随输入

相关问题