Database schema · DSC Shop
Khóa và ràng buộc trong DSC Shop
Khóa và ràng buộc trong DSC Shop
Năm bảng customers, orders, order_items, products, payments với kiểu dữ liệu và ràng buộc của từng cột; khóa ngoại order_items.order_id dùng ON DELETE CASCADE, các khóa ngoại còn lại dùng NO ACTION.
SCHEMA SHOP · 5 BẢNG CHÍNH
CASCADE
BẢNG
customers
customer_id
PK
int
full_name
NN
varchar(100)
email
UQ
varchar(255)
city
varchar(100)
created_at
NN
DF
timestamptz
+ 2 cột khác
BẢNG
orders
order_id
PK
int
customer_id
FK
NN
int
order_date
NN
timestamptz
status
NN
CK
DF
varchar(20)
channel
NN
CK
varchar(10)
+ 3 cột khác
BẢNG
order_items
order_id
PK
FK
int
product_id
PK
FK
int
quantity
NN
CK
int
unit_price
NN
CK
numeric(12,0)
discount
NN
CK
DF
numeric(3,2)
BẢNG
payments
payment_id
PK
int
order_id
FK
NN
int
amount
NN
CK
numeric(12,0)
method
NN
CK
varchar(20)
+ 1 cột khác
BẢNG
products
product_id
PK
int
sku
UQ
NN
varchar(20)
name
NN
varchar(200)
price
NN
CK
numeric(12,0)
stock_quantity
NN
CK
DF
int
+ 5 cột khác
Xóa một đơn hàng: các dòng order_items
của đơn tự bị xóa theo (ON DELETE CASCADE).
Đơn đã có payments thì không xóa được:
khóa ngoại mặc định NO ACTION chặn lại.
CHÚ GIẢI
PK khóa chính
FK khóa ngoại
UQ UNIQUE
NN NOT NULL
CK CHECK
DF DEFAULT
FK mặc định (NO ACTION)
ON DELETE CASCADE
© tiennhm