為滿足上述資料需求,設計一個關聯式資料庫綱要如下:
| 欄位名稱 | 資料型態 | 鍵 |
|---|---|---|
| SID | INT | PRIMARY KEY |
| Name | VARCHAR | |
| City | VARCHAR |
| 欄位名稱 | 資料型態 | 鍵 |
|---|---|---|
| CID | INT | PRIMARY KEY |
| Name | VARCHAR | |
| Gender | CHAR(1) | |
| Address | VARCHAR |
| 欄位名稱 | 資料型態 | 鍵 |
|---|---|---|
| CID | INT | FOREIGN KEY REFERENCES Customer(CID) |
| Phone | VARCHAR | PRIMARY KEY (CID, Phone) |
| 欄位名稱 | 資料型態 | 鍵 |
|---|---|---|
| CID | INT | FOREIGN KEY REFERENCES Customer(CID) |
| SID | INT | FOREIGN KEY REFERENCES Store(SID) |
| Time | DATETIME | PRIMARY KEY (CID, SID, Time) |
| Amount | DECIMAL |
Store 資料表:儲存每家商店的基本資訊,包括唯一的商店編號(SID)、商店名稱(Name)和商店所在城市(City)。
Customer 資料表:儲存每位顧客的基本資訊,包括唯一的顧客編號(CID)、姓名(Name)、性別(Gender)和地址(Address)。
CustomerPhone 資料表:儲存顧客的電話號碼,每位顧客可以有多個電話號碼。這張表使用複合主鍵(CID, Phone)來唯一識別每個電話號碼,並且通過外鍵(CID)關聯到顧客資料表。
Transaction 資料表:儲存交易資訊,包括顧客編號(CID)、商店編號(SID)、交易日期與時間(Time)和交易金額(Amount)。這張表的複合主鍵是(CID, SID, Time),並且通過外鍵(CID, SID)分別關聯到顧客和商店資料表。
此資料庫綱要能夠有效地儲存並管理連鎖商店的商店資訊、顧客資訊及交易記錄。