SQL Server/MySQL
QUẢN LÝ KHÁCH SẠN - KHÓA HỌC SQL SERVER
1. Tạo bảng
Tạo 2 bảng:
Bảng rooms (phòng):
- id (int, primary key, identity)
- name (nvarchar)
- price (int, default 0)
- status (nvarchar) -- (Trống / Đã đặt)
- created_at (datetime)
- updated_at (datetime)
Bảng customers (khách hàng):
- id (int, primary key, identity)
- fullname (nvarchar)
- phone (nvarchar)
- room_id (int) → khóa ngoại liên kết rooms(id)
2. Thêm dữ liệu
- Thêm ít nhất 3 phòng
- Thêm ít nhất 3 khách hàng (có gán room_id)
3. Thiết lập khóa ngoại
- room_id trong customers phải tham chiếu đến rooms(id)
4. Sử dụng CHECK
Tạo thêm bảng:
bookings
- id (int, primary key, identity)
- room_id (int)
- total_price (int)
Yêu cầu:
- total_price >= 0 (dùng CHECK)
5. Truy vấn dữ liệu
-
Hiển thị danh sách khách hàng + tên phòng họ đã đặt
(id khách, tên khách, tên phòng)
6. UPDATE
- Cập nhật tất cả phòng thành "Đã đặt"
- Cập nhật giá phòng id = 1 thành 500
7. DELETE
- Xóa các phòng có giá < 0
8. WHERE
Hiển thị:
- id phòng
- tên phòng
- giá
- tên khách hàng
Yêu cầu thêm (tư duy)
- Thử thêm dữ liệu sai (price < 0) vào bảng có CHECK → xem lỗi
- Thử thêm customer với room_id không tồn tại → xem lỗi khóa ngoại