如何在Flask SQLAlchemy中设置复合主键?
在Flask-SQLAlchemy中设置复合主键
要在Flask-SQLAlchemy里指定两列作为复合主键,直接给这两个字段都设置primary_key=True即可,无需添加冗余的id主键。
以下是具体的模型定义示例:
from flask_sqlalchemy import SQLAlchemy db = SQLAlchemy() class TargetTable(db.Model): __tablename__ = 'target_table' # 将A、B两列设为复合主键 A = db.Column(db.String(50), primary_key=True) B = db.Column(db.Integer, primary_key=True) # 其他业务字段示例 extra_column = db.Column(db.Text)
这样定义后,数据库会自动把A和B的组合作为表的主键,确保二者的组合唯一。如果尝试插入A与B重复的记录,数据库会触发唯一性约束报错,保证数据完整性。
内容的提问来源于stack exchange,提问作者no_modules
相关产品推荐
相关产品推荐

