在多个程序之间共享SQLite3数据库

时间:2014-06-27 18:51:32

标签: python sqlite flask sqlalchemy flask-sqlalchemy

我已经开始使用Flask和Flask-SQLAlchemy构建Web应用程序。我在构建Web应用程序方面的经验非常有限,所以如果我模糊不清,我会事先道歉。

Web应用程序的数据库已由服务器上运行的另一个程序构建。因此,所有表都已在数据库中预定义。我的网络应用程序和服务器上运行的其他程序将具有读取和读取功能。写访问数据库。

最近我决定重新构建我的应用程序并迎合模型 - 视图 - 控制器模式,类似于Django,并使用蓝图使事情更易于管理和更整洁。与此https://github.com/mitsuhiko/flask/wiki/Large-app-how-to

类似
...
app_name/
    model.py
    view.py
    controller.py
    __init__.py
...

所以我已经完成了一些教程并阅读了Flask-SQLAlchemy,但对于我的生活我无法理解的是如果我的数据库已经预定义,如何在应用程序中定义我的模型通过另一个程序?? 。和如何将SQLAlchemy ORM与预定义数据库一起使用?

以前,在我决定重组之前,我只是使用Pyhton的sqlite3库从数据库中抓取东西并将其显示在网页上。这不是很漂亮,而且我构建事物的方式会让事情失控。

1 个答案:

答案 0 :(得分:3)

其他程序是否也使用sqlalchemy以便您可以提升/分享其模型? 如果没有,您可以尝试反思:http://docs.sqlalchemy.org/en/latest/core/reflection.html 或者这个实验性自动化:http://docs.sqlalchemy.org/en/latest/orm/extensions/automap.html

你的问题不是这个问题,但sqlite3是一个文件数据库,而不是客户端 - 服务器数据库。不是说你会,但你可能遇到并发问题:

sqlite3 concurrent access

http://www.sqlite.org/lockingv3.html

操作系统和文件系统在此发挥作用。

相关问题