Các bài tập về windows form và dữ liệu sql năm 2024

SQL, viết tắt của Structure Query Language, là một công cụ quản lý dữ liệu, đơn giản nhưng rất hiệu quả, được sử dụng phổ biến ở nhiều lĩnh vực. Mặc khác, hầu hết tất cả các ngôn ngữ lập trình bậc cao đều có hỗ trợ SQL. Các công cụ lập trình đều cho phép người sử dụng kết nối và truy cập tới CSDL bằng cách nhúng các câu lệnh SQL vào trong các ngôn ngữ lập trình hoặc viết lời gọi đến các chương trình con trên hệ quản trị CSDL.

SQL ngày càng đóng vai trò quan trọng khi mà hiện nay Internet ngày càng phát triển. SQL được sử dụng như là công cụ để giao tiếp giữa các trình ứng dụng phía máy khách với máy chủ cơ sở dữ liệu, SQL sẽ thực hiện việc truy cập thông tin và kết quả hiển thị trên ứng dụng khi người dùng yêu cầu.

Trong các hệ quản trị cơ sở dữ liệu, SQL xuất hiện với vai trò ngôn ngữ, là công cụ giao tiếp giữa người sử dụng và hệ quản trị cơ sở dữ liệu với nhiều vai trò khác nhau như: truy vấn dữ liệu, lập trình cơ sở dữ liệu, quản trị cơ sở dữ liệu, truy cập dữ liệu trên Internet, ...

Để phục vụ nhu cầu học tập và nghiên cứu của sinh viên nói chung và sinh viên ngành Cao đẳng Bình Định nói riêng, một tài liệu tham khảo mang tính thực hành là cần thiết. Phân loại và giải chi tiết các dạng bài tập SQL sẽ giúp cho sinh viên nhận biết chính xác các dạng câu hỏi, sử dụng câu lệnh SQL hiệu quả nhất. Trong lập trình, tác giả sử dụng các thuật toán đơn giản, dễ hiểu để giải quyết các bài toán quản lý, đó là mục tiêu trong tài liệu này.

Trong tài liệu này, tác giả sử dụng CSDL Quản lý sinh viên làm bài mẫu từ đó sinh viên tự làm các bài tập trên CSDL bán hàng và các CSDL khác. Tài liệu cung cấp những kiến thức căn bản nhất về 2 nội dung chính là ngôn ngữ thao tác dữ liệu và lập trình với cơ sở dữ liệu, từ đó sinh viên có thể xây dựng một ứng dụng quản lý trên windows từ đơn giản đến phức tạp.

Trong mỗi chương tài liệu chia làm 2 phần chính là: tóm tắt lý thuyết và phân loại bài tập. Cụ thể chia thành 4 chương như sau:

Chương 1: Xây dựng Cơ sở dữ liệu. Trong chương này tác giả giới thiệu 2 CSDL mẫu, CSDL quản lý sinh viên và CSDL quản lý bán hàng, là 2 cơ sở dữ liệu mang tính cơ bản nhất, nó tập hợp tất cả các yêu cầu tổng quan để từ đó

sinh viên có thể làm một cách tương tự đối với các CSDL khác.

Chương 2: Câu lệnh truy vấn SQL. Trong chương này tác giả chia câu lệnh thao tác dữ liệu thành 6 dạng cơ bản, mỗi dạng có từ 3-4 bài tập minh hoạ, giúp sinh viên nhanh chóng nhận dạng đúng các yêu cầu của mỗi câu lệnh SQL.

Chương 3: Lập trình với SQL. Trong chương này tác giả chia cấu trúc lập trình thành 3 dạng: Hàm, Thủ tục và Con trỏ. Mỗi dạng bao gồm nhiều dạng bài khác nhau, mỗi dạng bài là cơ bản được tác giả chọn lọc và rất cần thiết trong lập trình ứng dụng sau này.

Chương 4: Một số đối tượng tiện ích khác, nhằm nâng cao kỹ năng lập trình, người lập trình phải hạn chế tối đa nhất các lỗi thường xẩy ra, lường trước lỗi và bẫy lỗi là kỹ năng cần thiết của người lập trình chuyên nghiệp.

Phần đọc thêm: Ứng dụng SQL trong lập trình C# căn bản. Trong chương này tác giả minh hoạ một số ứng dụng cơ bản, trong đó thể hiện một kết nối từ ứng dụng tới thủ tục trong hệ quản trị CSDL SQL Server. Giúp sinh viên thấy được mối liên hệ giữa lập trình CSDL với lập trình trên công cụ C#, được xem là kỹ thuật mang tính bảo mật cao.

Tài liệu tham khảo “Phân loại và giải chi tiết các dạng bài tập SQL” mang tính thực hành cao, là tài liệu gối đầu cho tất cả sinh viên đang ngồi ghế nhà trường, tài liệu giúp sinh viên học tốt các học phần liên quan như: Hệ quản trị CSDL Access, Hệ quản trị CSDL SQL, Lập trình Windows, Lập trình Website, ..ài liệu sẽ hoàn thiện hơn khi nhận nhiều ý kiến đóng góp quý báu của các bạn đọc. Tác giả rất mong nhận nhiều góp ý để tài liệu hữu ích hơn.

1. CƠ SỞ DỮ LIỆU QUAN HỆ

1. BẢNG DỮ LIỆU CHI TIẾT

Bảng DMKHOA Bảng DMNGANH

Bảng DMLOP

Bảng SINHVIEN

Bảng DMHOCPHAN

Bảng DIEMHP

2. BẢNG DỮ LIỆU CHI TIẾT

Bảng KHACHHANG

Bảng HANGHOA

Bảng HOADON Bảng CHITIETHD

CHƯƠNG 2. CÂU LỆNH TRUY VẤN SQL

A. KIẾN THỨC CẦN NHỚ

  1. Câu lệnh truy vấn với cấu trúc đơn giản

Ý nghĩa: Câu lệnh SELECT dùng để truy xuất dữ liệu từ một hay nhiều bảng.

Cú pháp: SELECT [ALL|DISTINCT]|[TOP n] [INTO tên_bảng_mới] FROM INNER JOIN ON ... INNER JOIN ON [WHERE điều_kiện lọc] [GROUP BY ds cột phân nhóm] [HAVING điều_kiện nhóm] [ORDER BY cột_sắp_xếp][DESC | ASC] Giải thích:

  • Danh sách cột: là dãy các cột/ biểu thức cột cách nhau bởi dấu phẩy. Dấu * có nghĩa là hiển thị tất cả các cột trong bảng.
  • Tham chiếu đến cột Khoá của bảng: .
  • Điều kiện trong câu lệnh SELECT WHERE : Điều kiện nằm sau từ khóa WHERE, là một biểu thức Logic gồm các phép toán sau: Các toán tử kết hợp điều kiện: AND, OR Các toán tử so sánh: >,=,= 5.
  • Hiển thị danh sách MaSV, HoTen , MaLop, MaHP, DiemHP được sắp xếp theo ưu tiên Mã lớp, Họ tên tăng dần.
  • Hiển thị danh sách gồm MaSV, HoTen, MaLop, DiemHP, MaHP của những sinh viên có điểm HP từ 5 đến 7 ở học kỳ I.
  • Hiển thị danh sách sinh viên gồm MaSV, HoTen, MaLop, TenLop, MaKhoa của Khoa có mã CNTT.
  • Lời giải:

    1. SELECT SINHVIEN, HoTen, MaLop, DiemHP, MaHP FROM SINHVIEN INNER JOIN DIEMHP ON DIEMHP.MaSV=SINHVIEN WHERE DiemHP>
    2. SELECT SINHVIEN, HoTen, MaLop, TenLopDiemHP, MaHP FROM SINHVIEN INNER JOIN DIEMHP ON DIEMHP.MaSV=SINHVIEN INNER JOIN DMLOP ON SINHVIEN.MaLop=DMLOP ORDER BY MaLop, HoTen ASC
    3. Cho biết MaHD, NgayLapHD, MaHK, TenH, DonGia, SoLuong, ThanhTien bán vào tháng 6
    4. Cho biết danh sách các mặt hàng đã bán được.

    DẠNG 2: CÂU LỆNH TRUY VẤN CÓ PHÂN NHÓM

    Bài số 1: Câu lệnh SQL có từ khoá GROUP BY không điều kiện.

    1. Cho biết MaLop, TenLop, tổng số sinh viên của mỗi lớp.
    2. Cho biết điểm trung bình chung của mỗi sinh viên, xuất ra bảng mới có tên DIEMTBC, biết rằng công thức tính DiemTBC như sau: DiemTBC =  [DiemHP * SoDvht] /  [SoDvht]
    3. Cho biết điểm trung bình chung của mỗi sinh viên ở mỗi học kỳ.
    4. Cho biết MaLop, TenLop, số lượng nam nữ theo từng lớp.

    Lời giải:

    1. SELECT SINHVIEN, TenLop, COUNT[Masv] AS Siso FROM DMLOP INNER JOIN SINHVIEN ON DMLOP.MaLop=SINHVIEN GROUP BY SINHVIEN,TenLop
    2. SELECT MaSV, SUM[DiemHP*Sodvht]/SUM[Sodvht] AS DiemTBC INTO DIEMTBC FROM DMHOCPHAN INNER JOIN DIEMHP ON DMHOCPHAN.MaHP=DIEMHP GROUP BY MaSV
    3. SELECT HocKy,MaSV,SUM[DiemHP*Sodvht]/SUM[Sodvht] AS DiemTBC FROM DMHOCPHAN INNER JOIN DIEMHP ON DMHOCPHAN.MaHP=DIEMHP GROUP BY HocKy,MaSV ORDER BY HocKy

    SELECT SINHVIEN,Tenlop,CASE GioiTinh WHEN 0 THEN N'Nữ' ELSE N'Nam' END AS GioiTinh, COUNT[MaSV] AS Soluong FROM DMLOP INNER JOIN SINHVIEN ON DMLOP.MaLop=SINHVIEN GROUP BY SINHVIEN,Tenlop,GioiTinh ORDER BY SINHVIEN

Chủ Đề