我正在尝试使用Flask将SQLite数据库移动到Heroku,以便可以从一些设备访问它。我正在将数据库推送到我在本地创建的Heroku,因此我知道该表存在。在
客户端.py
import requests, json
url = "https://someidijustmadeup.herokuapp.com/select"
j = {}
j["sql"] = "SELECT * FROM COMICS"
r = requests.get(url, json = j)
print("Status Code", r.status_code)
rJson = json.loads(r.content.decode("utf-8"))
print(len(rJson))
服务器.py
^{pr2}$executeSqlRequest
只查询数据库。实际的Flask应用程序很好,我可以连接到它并运行查询。在
信息
cat database.db
,在输出中我可以看到数据库中的行,因此我知道数据在那里。它还显示了表的SQL。在
Heroku dyno有一个ephemeral filesystem:每当dyno重新启动时,您所做的任何更改都将丢失,happens frequently(至少每天一次)。由于SQLite是基于文件的数据库,因此它与Heroku不兼容。在
好消息是Heroku对像PostgreSQL这样的客户机服务器数据库有很好的支持。实际上,默认情况下它提供了一个PostgreSQL database。
DATABASE_URL
环境变量将为您提供连接到该数据库的坐标。在如果Postgres不是你的速度,你可以从插件列表中选择another data store。在
相关问题 更多 >
编程相关推荐