阿摩線上測驗 登入

申論題資訊

試卷:110年 - 110 關務特種考試_三等_資訊處理:資料庫應用#98224
科目:公職◆資料庫應用
年份:110年
排序:0

申論題內容

一、某一個連鎖商店要建置一個關聯式資料庫(Relational Database),請設計一個資料庫綱要(Database Schema)以滿足下列資料需求:
1.商店(Store):每一家商店有一個商店編號(SID)、商店名稱(Name)、以及商店所在的城市名稱(City),每一家商店的商店編號是唯一的。
2.顧客(Customer):每一位顧客有一個顧客編號(CID)、姓名(Name)、性別(Gender)、地址(Address)、以及若干個電話號碼(Phone),
每一位顧客的顧客編號是唯一的。
3.交易(Transaction):每一筆交易記錄顧客編號(CID)、商店編號(SID) 、交易日期與時間(Time)、以及交易金額(Amount),每一筆交易是由顧客編號、商店編號、以及交易日期與時間來唯一識別。

詳解 (共 1 筆)

詳解 提供者:hchungw

為滿足上述資料需求,設計一個關聯式資料庫綱要如下:

1. 商店(Store)資料表

欄位名稱 資料型態
SID INT PRIMARY KEY
Name VARCHAR  
City VARCHAR  

2. 顧客(Customer)資料表

欄位名稱 資料型態
CID INT PRIMARY KEY
Name VARCHAR  
Gender CHAR(1)  
Address VARCHAR  

3. 顧客電話號碼(CustomerPhone)資料表

欄位名稱 資料型態
CID INT FOREIGN KEY REFERENCES Customer(CID)
Phone VARCHAR PRIMARY KEY (CID, Phone)

4. 交易(Transaction)資料表

欄位名稱 資料型態
CID INT FOREIGN KEY REFERENCES Customer(CID)
SID INT FOREIGN KEY REFERENCES Store(SID)
Time DATETIME PRIMARY KEY (CID, SID, Time)
Amount DECIMAL  
 
CREATE TABLE Store (
    SID INT PRIMARY KEY,
    Name VARCHAR(255),
    City VARCHAR(255)
);
CREATE TABLE Customer (
    CID INT PRIMARY KEY,
    Name VARCHAR(255),
    Gender CHAR(1),
    Address VARCHAR(255)
);
CREATE TABLE CustomerPhone (
    CID INT,
    Phone VARCHAR(20),
    PRIMARY KEY (CID, Phone),
    FOREIGN KEY (CID) REFERENCES Customer(CID)
);
CREATE TABLE Transaction (
    CID INT,
    SID INT,
    Time DATETIME,
    Amount DECIMAL(10, 2),
    PRIMARY KEY (CID, SID, Time),
    FOREIGN KEY (CID) REFERENCES Customer(CID),
    FOREIGN KEY (SID) REFERENCES Store(SID)
);
  1. Store 資料表:儲存每家商店的基本資訊,包括唯一的商店編號(SID)、商店名稱(Name)和商店所在城市(City)。

  2. Customer 資料表:儲存每位顧客的基本資訊,包括唯一的顧客編號(CID)、姓名(Name)、性別(Gender)和地址(Address)。

  3. CustomerPhone 資料表:儲存顧客的電話號碼,每位顧客可以有多個電話號碼。這張表使用複合主鍵(CID, Phone)來唯一識別每個電話號碼,並且通過外鍵(CID)關聯到顧客資料表。

  4. Transaction 資料表:儲存交易資訊,包括顧客編號(CID)、商店編號(SID)、交易日期與時間(Time)和交易金額(Amount)。這張表的複合主鍵是(CID, SID, Time),並且通過外鍵(CID, SID)分別關聯到顧客和商店資料表。

此資料庫綱要能夠有效地儲存並管理連鎖商店的商店資訊、顧客資訊及交易記錄。