我知道正常的查询是这样的:
session.query(User).filter_by(name='user1').all()
但是这个的前提是,User类已知。
在表已经存在的前提下,而这个表并不是我用ORM创建的, 我可以使用什么方法进行查询? 假设表名tb_user
比较笨的方法是自己去 show create table tb_user;
然后根据表的结构去创建一个User类。
有没有其他好的办法?
我知道正常的查询是这样的:
session.query(User).filter_by(name='user1').all()
但是这个的前提是,User类已知。
在表已经存在的前提下,而这个表并不是我用ORM创建的, 我可以使用什么方法进行查询? 假设表名tb_user
比较笨的方法是自己去 show create table tb_user;
然后根据表的结构去创建一个User类。
有没有其他好的办法?
你需要建个class把表字段写进去,做个数据库映射。
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(15), unique=True)
email = db.Column(db.String(50), unique=True)
password = db.Column(db.String(80))
这个class里的就是你表的字段,class名就是你的表名,可以定义长度,是否为key等。如果没有这张表,运行时会按class里的创建。缺少字段会添加。
具体看看sqlalchemy的官网如果你就想看下表结构,可以用数据库可视化工具,navicat,pycharm也自带数据库可视化工具,不过比较慢,自己百度下。