SQLAlchemy查询数据库数据
Posted liangxiyang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQLAlchemy查询数据库数据相关的知识,希望对你有一定的参考价值。
首先创建模型,在数据库里面生成表,然后填入数据,如下
1 # 定义orm,数据模型 2 class Test(db.Model): 3 __tablename__ = ‘test‘ 4 id = db.Column(db.Integer, primary_key=True, autoincrement=True) 5 username = db.Column(db.String(80), unique=True) 6 password = db.Column(db.String(80)) 7 email = db.Column(db.String(120), unique=True) 8 9 def __repr__(self): 10 return ‘<User %r>‘ % self.username 11 12 13 db.create_all() 14 15 @app.route(‘/‘) 16 def index(): 17 # 1.增加 18 admin = Test(username=‘GUEST5‘, password=‘GUEST5‘, email=‘GUEST5@example.com‘) 19 db.session.add(admin) # 提交一条数据 20 guestes = [Test(username=‘guest1‘, password=‘guest1‘, email=‘guest1@example.com‘), 21 Test(username=‘guest2‘, password=‘guest2‘, email=‘guest2@example.com‘), 22 Test(username=‘guest3‘, password=‘guest3‘, email=‘guest3@example.com‘), 23 Test(username=‘guest4‘, password=‘guest4‘, email=‘guest4@example.com‘)] 24 db.session.add_all(guestes) # 提交多条数据 25 db.session.commit() 26 27 return ‘hello world‘ 28 29 30 if __name__ == ‘__main__‘: 31 app.run(debug=True, port=‘6009‘)
0x01:查询用户数目
1 Test.query.count()
0x02:查询所有用户
1 result = Test.query.all()
0x03:查找字段为指定值的用户
1 result = Test.query.filter(Test.username == ‘guest1‘).first()
0x04:查找指定字段以某个字符串开始的用户(根据开头查询)
1 results = Test.query.filter(Test.username.startswith(‘g‘)).all()
0x05:查找指定字段以某个字符串结束的用户(根据结尾查询)
1 results = Test.query.filter(Test.username.endswith(‘1‘)).all()
0x06:查找指定字段包含某个字符串的用户(根据关键字查询)
1 results = Test.query.filter(Test.username.contains(‘e‘)).all()
一位大佬的博文写的很详细,大家可以看一下:https://blog.csdn.net/jlb1024/article/details/81515155
以上是关于SQLAlchemy查询数据库数据的主要内容,如果未能解决你的问题,请参考以下文章
在 Sqlalchemy 查询中忽略 MYSQL 数据库中的锁