btvn.vn
Tìm kiếm Đăng nhập

Vận dụng với phường/xã giả định

Lưu trên thiết bị này
Thực hành tạo và khai thác cơ sở dữ liệu — ICT · Chọn bài khác

Dùng đúng hai cấp của trang cập nhật

Theo **trang 108 SGK cập nhật chính thức**, bài vận dụng dùng `tinh(idTinh,tenTinh)` và `xa(idXa,tenXa,idTinh)`. Đây là **CSDL bài tập**: Tỉnh Mẫu A và Thành phố Mẫu B là tên giả, không chỉ một địa phương Việt Nam hiện hành. Nếu đã tạo hai bảng ở Bài 19–20, mở lại cấu trúc và dữ liệu: `tinh.idTinh` là khóa chính, `xa.idTinh` là khóa ngoại tới mã ấy, hai đầu có kiểu tương thích. Không thêm một bảng cấp huyện vào mô hình hai cấp này. **Nhiệm vụ:** đọc mã của Tỉnh Mẫu A trong `tinh`, rồi thêm một hàng `xa` tên “Phường Mẫu” dùng **đúng mã đã đọc**. Nếu `idXa` tự tăng, để máy cấp mã; nếu `idTinh` là INT, nhập mã số thực tế, không gõ nhãn ví dụ T01. Với HeidiSQL 12.21.1.1 tiếng Anh/Linux, dùng Data → Insert, nhập tên, mở danh sách `idTinh` chọn Tỉnh Mẫu A (1), nhấn Tab rồi Post. F5 đọc lại: tên “Phường Mẫu” và mã tỉnh 1 ở cùng hàng; mã xã do máy cấp. Nếu chưa có hai bảng, hoàn thành bước tạo bảng ở Bài 19–20 trước khi nhập.

Tìm theo mã tỉnh, rồi kiểm ý nghĩa

Giả sử Tỉnh Mẫu A được cấp `idTinh = 1`, truy vấn một bảng: ```sql SELECT idXa, tenXa, idTinh FROM xa WHERE idTinh = 1 ORDER BY idXa; ``` Kết quả chỉ gồm những hàng phường/xã giả đang trỏ tới mã 1. Nếu cùng tên “Phường Mẫu” xuất hiện ở Thành phố Mẫu B mã 2, chúng là hai hàng khác nhau; quy tắc UNIQUE `(tenXa,idTinh)` nếu đã đặt sẽ xét **cặp tên–mã tỉnh**, không cấm tên lặp giữa hai tỉnh. Câu SELECT không tự xác minh tên hoặc địa giới hiện hành. Khi dùng dữ liệu hành chính thật, cần kiểm nguồn chính thức và thời điểm áp dụng; bài này chỉ chuyển kiến thức khóa ngoại sang ví dụ gần gũi.

Bài luyện

Trong CSDL giả, xa.idTinh dùng để làm gì?
Chọn một đáp án

Bài luyện

Hai tỉnh giả có cùng “Phường Mẫu”. UNIQUE(tenXa,idTinh) sẽ cho kết quả nào?
Chọn một đáp án

Bài luyện

Vì sao không dùng tên “Tỉnh Mẫu A” trong bài như dữ liệu hành chính hiện hành?
Chọn một đáp án

Đang học