Chọn đến phần học sinh cần nhanh chóng thông qua mục lục bằng cách click đến phần đó
I. Lý thuyết trọng tâm
Việc đầu tiên để làm việc với một cơ sở dữ liệu là tạo lập. Trong bài thực hành này, các em sẽ sử dụng phần mềm khách quản trị CSDL HeidiSQL để tạo lập CSDL và các bảng đơn giản dựa trên thiết kế đã xây dựng ở Bài 18.
Nhiệm vụ: Tạo CSDL mới tên là mymusic, khởi tạo bảng nhacsi, khai báo các khoá cho bảng này như thiết kế ở Bài 18.
Nhắc lại cấu trúc bảng nhacsi đã thiết kế: nhacsi(idNhacsi, tenNhacsi), trong đó idNhacsi là khoá chính kiểu INT AUTO_INCREMENT, tenNhacsi kiểu VARCHAR(255).
Lưu ý quan trọng: Tên CSDL, tên các bảng và tên các trường không được chứa các kí tự đặc biệt, bao gồm kí tự trống (dấu cách) và kí tự tiếng Việt có dấu – tương tự như quy tắc đặt tên biến trong lập trình.
II. Hướng dẫn thực hành
Bước 1: Tạo lập CSDL mymusic
Sau khi mở HeidiSQL và kết nối đến máy chủ cơ sở dữ liệu, thực hiện các thao tác sau:
Thao tác: Nháy nút phải chuột ở vùng danh sách các CSDL đã có (phía bên trái giao diện), chọn Tạo mới → chọn Cơ sở dữ liệu.
Hộp thoại tạo CSDL hiện ra, thực hiện:
- Ở ô Tên, nhập: mymusic.
- Ô Đối chiếu để mặc định: utf8mb4_general_ci (bộ mã kí tự Unicode 4 byte utf8mb4, đối chiếu so sánh xâu theo utf8mb4_general_ci).
- Chọn OK để hoàn tất.
Sau khi tạo xong, ở vùng danh sách bên trái sẽ xuất hiện tên CSDL mymusic. Đồng thời, ở vùng mã lệnh phía dưới sẽ hiển thị câu truy vấn SQL tương ứng với thao tác vừa thực hiện (lệnh CREATE DATABASE).

Bước 2: Tạo lập bảng nhacsi
a) Khai báo tạo lập bảng, các trường và kiểu dữ liệu
Cần tạo bảng nhacsi gồm hai trường: idNhacsi (kiểu INT) và tenNhacsi (kiểu VARCHAR, độ dài 255).
Thao tác tạo bảng: Nháy nút phải chuột ở vùng danh sách các CSDL đã có, chọn Tạo mới → chọn Bảng. Nhập tên bảng: nhacsi, sau đó chọn Thêm mới để thêm trường. Một trường với tên mặc định Column1 sẽ xuất hiện phía dưới.

Khai báo trường idNhacsi:
- Nhập Tên: idNhacsi.
- Chọn Kiểu dữ liệu: INT.
- Bỏ đánh dấu ô Allow NULL (không cho phép giá trị rỗng, vì đây sẽ là khoá chính).

- Tiếp theo, thiết lập giá trị tự động tăng: chọn AUTO_INCREMENT dưới nhãn Mặc định, rồi chọn OK.

Kết quả: trường idNhacsi hiển thị với kiểu INT, cột Mặc định ghi AUTO_INCREMENT.
Khai báo trường tenNhacsi:
- Để thêm trường tiếp theo: nhấn tổ hợp phím Ctrl+Insert, hoặc nháy nút phải chuột vào phần dưới dòng idNhacsi rồi chọn Add column.
- Nhập Tên: tenNhacsi.
- Chọn Kiểu dữ liệu: VARCHAR, độ dài 255.
- Giá trị mặc định là kí tự rỗng “”.

b) Khai báo khoá chính
Theo thiết kế ở Bài 18, trường idNhacsi được ấn định làm khoá chính của bảng nhacsi.
Thao tác: Nháy nút phải chuột vào dòng khai báo trường idNhacsi, chọn Create new index → chọn PRIMARY.

Xử lí khi chọn nhầm khoá chính: Nếu trong quá trình thao tác, vô tình chọn nhầm trường khác làm khoá chính (ví dụ chọn nhầm tenNhacsi như Hình 19.7), cách sửa như sau:

- Nháy đúp chuột vào tên trường đang bị chọn nhầm (tenNhacsi) ở dưới ô PRIMARY KEY ở phần trên.
- Một danh sách các trường hiện ra, chọn lại trường đúng là idNhacsi.

- Sau đó nháy chuột vào ô bên cạnh dưới ô PRIMARY để xác nhận.

c) Lưu kết quả
Cuối cùng, chọn nút Lưu để lưu lại khai báo bảng nhacsi. Ở vùng hiển thị phía trái, tên bảng nhacsi sẽ xuất hiện dưới dòng tên CSDL mymusic, cho biết bảng đã được tạo thành công.

III. Hướng dẫn giải bài tập SGK
Bài Luyện tập
Đề bài: Khai báo tạo lập bảng casi như thiết kế ở Bài 18.
Hướng dẫn thực hành:
Theo thiết kế ở Bài 18, bảng casi có cấu trúc: casi(idCasi, tenCasi), trong đó idCasi là khoá chính kiểu INT AUTO_INCREMENT, tenCasi kiểu VARCHAR(255).
Các bước thực hiện tương tự như tạo bảng nhacsi:
Bước 1 – Tạo bảng: Đảm bảo đang ở trong CSDL mymusic. Nháy nút phải chuột ở vùng danh sách, chọn Tạo mới → Bảng. Nhập tên bảng: casi, chọn Thêm mới.
Bước 2 – Khai báo trường idCasi: Nhập Tên: idCasi, chọn kiểu dữ liệu INT, bỏ đánh dấu Allow NULL. Chọn AUTO_INCREMENT dưới nhãn Mặc định, chọn OK.
Bước 3 – Khai báo trường tenCasi: Nhấn Ctrl+Insert để thêm trường. Nhập Tên: tenCasi, chọn kiểu dữ liệu VARCHAR, độ dài 255.
Bước 4 – Khai báo khoá chính: Nháy nút phải chuột vào dòng idCasi, chọn Create new index → PRIMARY.
Bước 5 – Lưu: Chọn nút Lưu. Bảng casi xuất hiện dưới CSDL mymusic cùng với bảng nhacsi đã tạo trước đó.
Bài Vận dụng
Đề bài: Hãy lập CSDL quản lí tên các Quận/Huyện, Tỉnh/Thành phố của Việt Nam. Tạo bảng Tỉnh/Thành phố.
Hướng dẫn thực hành:
Dựa trên bài tập Vận dụng ở Bài 18, ta đã thiết kế cấu trúc CSDL gồm hai bảng:
- tinhtp(idTinhtp, tenTinhtp)
- quanhuyen(idQuanhuyen, tenQuanhuyen, idTinhtp)
Trong bài này, ta tạo CSDL mới và bảng tinhtp (bảng không có khoá ngoài).
Bước 1 – Tạo CSDL: Nháy nút phải chuột ở vùng danh sách, chọn Tạo mới → Cơ sở dữ liệu. Nhập tên: quanli_hanhchinh (hoặc tên tuỳ chọn, không chứa kí tự đặc biệt, dấu cách hay tiếng Việt có dấu). Đối chiếu để mặc định utf8mb4_general_ci. Chọn OK.
Bước 2 – Tạo bảng tinhtp: Nháy nút phải chuột, chọn Tạo mới → Bảng. Nhập tên: tinhtp, chọn Thêm mới.
Bước 3 – Khai báo trường idTinhtp: Nhập Tên: idTinhtp, kiểu dữ liệu INT, bỏ đánh dấu Allow NULL, chọn AUTO_INCREMENT dưới nhãn Mặc định, chọn OK.
Bước 4 – Khai báo trường tenTinhtp: Nhấn Ctrl+Insert, nhập Tên: tenTinhtp, kiểu VARCHAR, độ dài 255.
Bước 5 – Khai báo khoá chính: Nháy nút phải chuột vào dòng idTinhtp, chọn Create new index → PRIMARY.
Bước 6 – Lưu: Chọn Lưu. Bảng tinhtp xuất hiện dưới CSDL vừa tạo.

Thầy Phạm Thành Danh
(Người kiểm duyệt, ra đề)
Chức vụ: Trưởng ban biên soạn môn Tin Học THPT
Trình độ: Cử nhân Sư phạm Tin học, Chứng chỉ hạng II, Chứng chỉ Tin học, Ngoại ngữ B1
Kinh nghiệm: 8+ năm kinh nghiệm tại Trường THPT Thuận Hóa

