flask ORM: Flask-SQLAlchemy【单表】增删改查
模型需要继承自db.Model 属性必须写成 db.Column()的数据类型 数据类型 db.String 是varchar db.Text 是text db.Integer 是int db.Column()中的数据类型需要加上长度 其他参数有primary_key autoincrement nullable 这些参数可以设置为True OR False
Integer | 整数 |
String(size) | 有长度限制的字符串 |
Text | 较长的unicode文本 |
DateTime | datetime对象的时间和日期 |
Float | 浮点数 |
Boolean | 布尔值 |
PickleType | 持久化Python对象 |
LargeBinary | 任意大的二进制数据 |
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
class Article(db.Model): __tablename__ = "article" id =db.Column(db.Integer,primary_key=True, autoincrement=True) title = db.Column(db.String(100), nullable=False) content = db.Column(db.Text, nullable=False)
单表增加:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 arricle = Article(title="aaa",content="bbb") 2 db.session.add(arricle) 3 db.session.commit()
单表删除:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 result = Article.query.filter(Article.title=='success2018').first() 2 db.session.delete(result) 3 db.session.commit()
单表修改:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 result = Article.query.filter(Article.title=='success').first() 2 result.title = 'success2018' 3 db.session.commit()
单表查询:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 query是从db.Model中继承来的 2 query.filter(Article.title=’xx’)过滤条件 3 first()取出查询结果的第一条数据 实际上就是一个Article对象 4 .all()是查询到的所有结果 是一个Article对象数组 5 6 result = Article.query.filter(Article.title=='mark').first() 7 print(result.content)