Bài 1: Hướng dẫn sử dụng câu lệnh SQL qua ví dụ quản lý sinh viên

Giới thiệu

Bạn có thể là muốn trở thành người lập trình ứng dụng, quản trị các hệ quản trị cơ sở dữ liệu hoặc đơn giản cần truy vấn các database để lấy dữ liệu thoả mãn yêu cầu đặt ra. Các ứng dụng quản lý hiện nay đều sử dụng các hệ quản trị cơ sở dữ liệuđể lưu trữ dữ liệu, việc bạn muốn làm chủ thao tác với các cơ sở dữ liệu bạn cần biết cách sử dụng ngôn ngữ SQL (Structure Query Language).

Đây là loạt bài giới thiệu cách sử dụng câu lệnh SQL qua ví dụ cụ thể để các bạn có thể học, thực hành trực tiếp. Các bạn có thể sử dụng phần mềm Microsoft Access, MySQL, SQL Server hoặc bất kỳ hệ quản trị cơ sở dữ liệu quan hệ nào. Vì các hệ quản trị cơ sở dữ liệu quan hệ này đều tuân theo chuẩn của ngôn ngữ SQL.

Ngôn ngữ SQL là gì?

  • Là ngôn ngữ truy vấn dựa trên đại số quan hệ.
  • Cho phép người dùng giao tiếp với Cơ sở dữ liệu.
  • Gồm các loại:
    • Ngôn ngữ định nghĩa dữ liệu (Data Definition Language – DDL): Cho phép khai báo cấu trúc các bảng của CSDL, khai báo các mối liên hệ của dữ liệu và các quy tắc áp dụng lên các dữ liệu đó.
    • Ngôn ngữ thao tác dữ liệu (Data Manipullation Language – DML): Cho phép người sử dụng khai thác CSDL để truy vấn các thông tin cần thiết trong Cơ sở dữ liệu. Đồng thời cho phép thêm (insert), xoá (delete), sửa (update) dữ liệu trong CSDL
    • Ngôn ngữ quản lý dữ liệu (Data Control Language-DCL): Bao gồm các câu lệnh đảm bảo tính an toàn và toàn vẹn dữ liệu, cho phép cấp phát quyền truy cập vào dữ liệu

Phát biểu bài toán

Chúng ta sẽ cần thiết kế một cơ sở dữ liệu quản lý sinh viên đơn giản ở trong một trường Đại Học, thoả mãn yêu cầu đầu vào như sau:

  1. Lưu trữ về thông tin sinh viên, với Mã sinh viên khoá chính, sinh viên có các thông tin về họ đệm, tên, ngày sinh, giới tính, tỉnh thành. Và các sinh viên sẽ được xếp vào một lớp cụ thể.
  2. Các lớp sẽ quản lý theo mã lớp và các thông tin tên lớp, nhiều sinh viên có thể thuộc một lớp nào đó. Các lớp sẽ thuộc một Khoa nào đó.
  3. Quản lý thông tin về các khoa như tên Khoa, địa điểm, số điện thoại liên lạc.
  4. Sinh viên sẽ phải học các môn học và sẽ lưu kết quả của từng môn học theo sinh viên tương ứng.
  5. Yêu cầu thiết kế cơ sở dữ liệu đáp ứng chuẩn 3NF để không dư thừa dữ liêu.

Sau khi phân tích, chúng tôi đề xuất các bảng sau:

  1.   KHOA (MaKhoa, TenKhoa, DiaDiem, SDT)
  2.   LOP (MaLop, TenLop, SiSo, MaKhoa)
  3.   SINHVIEN (MaSV, HoDem, Ten, NgaySinh, GioiTinh, Tinh, MaLop)
  4.   MONHOC (MaMH, TenMH, SoTC, DieuKien)
  5.   KETQUA (MaSV, MaMH, Ketqua)

Đây là Cơ sở dữ liệu chúng tôi tạm thời đề xuất, các bạn có thể suy nghĩ thêm, cải tiến, thêm các trường thông tin vào các bảng hoặc thêm các bảng khác nếu thấy cần thiết. Các bài sau, chúng tôi sẽ sử dụng 5 bảng này để thực hiện các yêu cầu thao tác với từng yêu cầu cụ thể.

Chúc các bạn thành công! Các bạn đón xem bài tiếp theo.

Có thể bạn sẽ thích…

Trả lời

EnglishVietnamese