我被要求将Access数据库移植到MySQL,并为用户提供一个简单的web前端。DB由8-10个表组成,并存储关于客户咨询(客户、顾问、主题、小时、.)的数据。
我需要提供一个网络接口供我们的顾问使用,他们在会议期间将所有这些信息插入到预定义的掩码/表单中。
我最初的想法是将Access-DB移植到MySQL,然后使用web2py框架构建一个用户界面,包括登录、插入数据、浏览/滚动案例和拉动报告。
带有用户管理和一些示例的web2py视图&控制器和MySQL正在运行。我在web2py中将DB添加到DAL中,但现在我注意到,使用web2py,必须在web2py中再次定义每个表,因为它能够与Server通信。
在努力成功地运行extract_mysql_models.py脚本以导出已经存在的SQL的结构以便用于web2py的同时,对web2py的担忧也越来越多。
这种对我的DB的双重/冗余的方式让我觉得很奇怪,而且web2py不支持python3。
web2py是完成任务的正确方式,还是有更好的方法?
非常感谢你的倾听/帮助。
发布于 2016-01-27 14:21:45
这种对我的DB的双重/冗余的方式让我觉得很奇怪,而且web2py不支持python3。
用于与数据库通信的任何抽象(无论是web2py DAL、Django ORM、SQLAlchemy等)为了构造查询,必须对数据库模式有一定的了解。
即使您自己编程地生成了所有SQL语句,而不使用ORM/DAL,您的代码仍然必须对数据库结构有一定的了解(例如,您必须指定表和字段的名称,等等)。
对于现有的数据库,我们的目标是通过对数据库模式的内省来实现这个过程的自动化,这正是extract_mysql_models.py脚本的目的。如果该脚本不起作用,那么您应该在web2py Google上报告一个问题和/或打开一个线程。
另外,请注意,在创建新数据库时,web2py通过为您处理迁移(包括表创建)来帮助您避免模式的冗余规范--因此您只在web2py中指定了模式,DAL将自动在数据库中创建表(当然,这是可选的)。
https://stackoverflow.com/questions/35038543
复制相似问题