1. 程式人生 > >SQLAlchemy中表結構的一對一

SQLAlchemy中表結構的一對一

dna 例如 prim pri 引用屬性 ref ble mode col

1.先創建兩個數據庫類,例如創建LOL與DATA2這兩個類

LOL表為主表

class LOL(db.Model):
    __tablename__ = "lol"
    id = db.Column(db.Integer, primary_key=True)
    lname = db.Column(db.String(30), nullable=False)
    # 增加關聯屬性以及反向引用屬性
    data = db.relationship("DOTA2", backref = "lol", uselist=False)

    def __repr__(self):
        
return "<LOL:%r>" % self.lname

DOTA2位從表,裏面含有一個lol_id字段為外鍵,因此兩張表進行了關聯

class DOTA2(db.Model):
    __tablename__ = "dota2"
    id = db.Column(db.Integer, primary_key=True)
    dname = db.Column(db.String(30))
    # 增加一個列(外鍵):表示引用自LOL表的外鍵
    lol_id = db.Column(db.Integer, db.ForeignKey("lol.id"))

    
def __init__(self, dname): self.dname = dname def __repr__(self): return "<DOTA2:%r>" % self.dname

接著往lol表中添加數據

SQLAlchemy中表結構的一對一