簡體   English   中英

識別sql中的關系

[英]Identifying relationship in sql

CREATE TABLE CUSTOMER 
(
    CUSTOMER_ID   NUMBER(3),
    NAME VARCHAR2(10),
    ADDR VARCHAR2(30)
);

CREATE TABLE ISSUE_CARD 
(
    CUSTOMER_ID  NUMBER(3),
    CARD_ID NUMBER(3)
);

CREATE TABLE CARD 
(
    CARD_ID NUMBER(3)
);

我想設置CustomerISSUE_CARD表之間的關系如下:

  • 客戶表的最小基數為 0
  • 客戶表的最大基數為 1

這種關系意味着客戶可以“沒有”卡插入表中。 顧客也可以“用”一張卡片插入桌子。

所以我必須向Customer表添加一些約束,但我不知道該怎么做,因為如果我將外鍵添加到Customer表中,則必須將值插入到表中

我認為這個案例不能調整為非識別關系,但我認為這個案例被認為是一個識別關系。

謝謝你。

如果客戶只能擁有 0 張或 1 張卡,則您不需要 ISSUE_CARD 表。 只需將 CARD_ID 列添加到 CUSTOMER 表。

像 ISSUE_CARD 這樣的橋接表只需要支持多對多關系。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM