SQL Server中多對多關係的實現

2021-07-16 22:18:02 字數 1014 閱讀 8490

多對多的關係必須另外新增一張表來表示

--班級

create table banji

( banji_id int constraint pk_banji primary key, --主鍵

banji_num int not null,

banji_name nvarchar(20)

)--教師

create table jiaoshi

( jiaoshi_id int constraint pk_jaioshi primary key, --主鍵

jiaoshi_name nvarchar(20) not null

)--班級和教師的關係

( banji_id int constraint fk_bnaji_id foreign key references banji(banji_id), --外來鍵

jiaoshi_id int constraint fk_jaoshi_id foreign key references jiaoshi(jiaoshi_id), --外來鍵

kecheng nvarchar(20),

constraint pk_banji_id_jiaoshi_id primary key (banji_id, jiaoshi_id, kecheng) --benji_id, jiaoshi_id, kecheng的三者組合作為主鍵

資料庫關係圖:

多對多關係

實體模型中相關的模型之間為了方便查詢需要做到你中有我 我中有你 一對多表設計上是在多方應用少方的主鍵作為外來鍵約束 模型上需要在多方加入乙個少方模型物件的屬性,在少方加入乙個多方物件的列表 語法 少方物件 db.relationship 少方模型名 backref db.backref xxlist...

Flask sqlalchemy多對多關係

from flask import flask from flask sqlalchemy import sqlalchemy article tag db.table article tag db.column article id db.integer,db.foreignkey article...

多對多關係對映

需要用到 manytomany註解,然後在需要維護關係的一方,加上 jointable註解。必須指定乙個維護關係,否則會導致關係表id重複出現錯誤。jointable 有以下屬性,joincolumns 設定該實體類對映在關係表中的外來鍵列名和參照列,inversecolumns 設定和該實體類關聯...