GraphQL 可讓您建立跨類型的關係,包括一對一 (1:1)、一對多 (1:N) 和多對多 (M:N) 關係。
建立新的一對一關係
從 [結構描述總管 ] 窗格中,選取類型旁邊的省略符號,然後選取 [管理關聯性] 選項。 管理關聯性 畫面隨即出現。
選取新增關聯。 在此範例中,我們會根據存在於這兩種類型的 ProductModelID 欄位,在 Product 類型與 ProductModel 類型之間建立新的一對一關聯性。 我們針對基數選取一對一,選取From 和到 類型,然後選取此關聯性的From 和到 字段。
注意
您可以在 [ 從 ] 和 [ 至 ] 欄位選擇器中選取多個欄位。 此功能可讓您建立包含多個欄位的關係。
一對多 (1:N) 及多對多 (M:N) 關聯性
例如,若要建立一對多 (1:N) 關聯性,在 Product 與 Order 之間,其中每個產品都可以與多個訂單相關聯,請選取一對多 作為基數。 此關聯性反映單一產品可以連結至多個訂單的想法,但每個訂單只會連結到一個產品。
對於多對多關係(M:N)關係,例如書籍與作者之間的關聯性,其中一本書可以有多個作者,而作者可以有多個書籍,請選擇多對多作為基數。 您需要在架構中有連結類型,才能容納這種關聯性。
當您選取多對多作為基數時,新增關聯性對話方塊會顯示另一組選擇器。 例如,在 [書籍 和 作者] 中,選取連結類型 ( 例如 BooksAuthors),以及 BookId 和 AuthorId 等欄位作為連結來源和連結目的地欄位。
多對多關聯性的考慮
如果您的連結類型有一或多個未參考為 「從」欄位 或 「到」欄位,則 GraphQL 的 API 會自動產生下列四個一對多關係:
從 From 類型到連結類型的一對多關聯性
從連結類型到From類型的一對多關聯性
從 To 類型到連結類型的一對多關聯性
從連結類型到 To 類型的一對多關聯性
這些可讓您在任何查詢或變動中參考連結類型中未連結的欄位,並讓查詢或變動在任何方向上參考關聯性。
如果連結類型中沒有未連結的欄位,則會建立單一多對多關聯性,而且查詢或變動不需要參考連結類型即可使用關聯性。
刪除關聯性
從 管理關係 畫面刪除關係,方法是選取關係旁邊的核取方塊,然後選取 刪除。