我是一个初学者,我只是尝试在android上使用qpython。
我尝试使用sqlite3连接qpython3上的数据库:我的代码
import sqlite3
conn=sqlite3.connect('mydatabase.db')但它会引发错误,无法打开数据库文件。
有什么解决方案吗??如果我在pc上尝试,如果不存在数据库,它会自动创建一个数据库
发布于 2017-04-18 06:33:07
它不能工作的原因是QPython程序是从'/‘目录运行的,这个目录对非根用户当然是不可写的。您可以使用从控制台运行的以下代码来检查这一点。
import os
print(os.getcwd())如果您转到About菜单中的ftp实用程序,您将找到QPython3正在使用的目录路径。在我的HTC手机上是:
/storage/emulated/0/com.hipipal.qpyplus因此,我将示例代码更改为:
import os
import sqlite3
RootPath='/storage/emulated/0/com.hipipal.qpyplus'
conn=sqlite3.connect(os.path.join(RootPath,'mydatabase.db'))它对我来说工作得很好。
我还发现有必要提交更改,否则这些更改将不会被写入文件。也就是说,以以下方式结束程序:
conn.commit()
conn.close()https://stackoverflow.com/questions/42505294
复制相似问题