我试图建立一个到我的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上建立到我的数据库的连接?
1条答案
按热度按时间ijnw1ujt1#
我得到了使用
db_path = urllib.parse.quote(os.path.abspath(database_name))
的提示,但它并没有真正帮助我。现在我得到了以下错误:运行时错误:索引处的类型Text转换错误:11,尾随输入