Data integrity is concerned with storing data accurately, ensuring that if a row should not have an empty name that we don’t store it in the database, or that we don’t store a negative price value or any number of same constraints like that.
Column constraints ensure that we apply rules of consistency and validation consistently. That means that if one record has certain rules that make it valid, then we should apply those rules to all records and all changes that are sent to the database, treating all rules of consistency for all records the same.
# 例子 class User(db.Model): name = db.Column(db.String(), nullable=False) title = db.Column(db.String(), unique=True) title = db.Column(db.String(), unique=True, nullable=False)
Implement a check constraint
class Product(db.Model): # This ensures that no product goes into the table with a nonpositive price value price = db.Column(db.Float, db.CheckConstraint('price>0'))