首頁 >資料庫 >mysql教程 >如何在PostgreSQL中實現多對多關係?

如何在PostgreSQL中實現多對多關係?

Mary-Kate Olsen
Mary-Kate Olsen原創
2025-01-22 14:42:09758瀏覽

How to Implement Many-to-Many Relationships in PostgreSQL?

在PostgreSQL中實現多對多關係

在PostgreSQL中實現多對多關係需要建立一個單獨的橋接表。這個表,被稱為“連接表”,用於連接關係中涉及的主表。

為此,請建立以下三個表:

<code class="language-sql">CREATE TABLE product (
  product_id serial PRIMARY KEY,
  product    text NOT NULL,
  price      numeric NOT NULL DEFAULT 0
);

CREATE TABLE bill (
  bill_id serial PRIMARY KEY,
  bill     text NOT NULL,
  billdate date NOT NULL DEFAULT CURRENT_DATE
);

CREATE TABLE bill_product (
  bill_id    int REFERENCES bill (bill_id) ON UPDATE CASCADE ON DELETE CASCADE,
  product_id int REFERENCES product (product_id) ON UPDATE CASCADE,
  amount     numeric NOT NULL DEFAULT 1,
  CONSTRAINT bill_product_pkey PRIMARY KEY (bill_id, product_id)
);</code>

這種結構透過bill_product連接表有效地連接了productbill表,從而建立了多對多關係。

以上是如何在PostgreSQL中實現多對多關係?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn