Sách Giáo Khoa 247

Tin học 11 - Định hướng khoa học máy tính - Bài 14: SQL - Ngôn ngữ truy vấn có cấu trúc | Kết Nối Tri Thức Với Cuộc Sống

Xem chi tiết nội dung bài Bài 14: SQL - Ngôn ngữ truy vấn có cấu trúc và tải xuống miễn phí trọn bộ file PDF Sách Tin học 11 - Định hướng khoa học máy tính | Kết Nối Tri Thức Với Cuộc Sống

(Trang 69)

SAU BÀI HỌC NÀY EM SẼ:

  • Hiểu được ở mức nguyên lí: CSDL và các bảng được tạo lập, được thêm mới, cập nhật và truy xuất dữ liệu qua SQL.

Ở bài trước các em đã biết hệ QTCSDL với vai trò là một bộ phần mềm hỗ trợ khởi tạo, cập nhật, truy xuất CSDL đề người dùng có thể cập nhật, truy xuất CSDL. Ngày nay người ta thực hiện công việc đó chủ yếu thông qua ngôn ngữ truy vấn có cấu trúc SQL. Sự khác biệt của việc sử dụng SQL so với việc truy xuất dữ liệu bằng ngôn ngữ lập trình là gì?

1. LỢI ÍCH CỦA NGÔN NGỮ TRUY VẤN

Hoạt động 1: Thảo luận về hai cách truy xuất dữ liệu

Để lấy danh sách các bản nhạc do nhạc sĩ Văn Cao (mã định danh Aid = 1), sáng tác trong bảng dữ liệu Bản nhạc, ta có thể thực hiện theo một trong hai cách sau:

- Dùng một ngôn ngữ lập trình, viết chương trình mở tệp chứa bảng dữ liệu Bản nhạc, rồi lần lượt lấy ra từng nhóm dữ liệu liên quan đến từng bản nhạc, sau đó tách phần Aid đề kiểm tra, nếu Aid = 1 thì đưa ra tên bản nhạc (TenBN).

- Dùng ngôn ngữ truy vấn, viết "CHỌN TenBN TỪ Bản nhạc VỚI Aid = 1" rồi gửi cho hệ QTCSDL thực hiện.

Sự khác biệt cơ bản trong cách truy vẫn nhờ ngôn ngữ truy vấn so với lập trình trực tiếp theo em là gì?

Với cách thực hiện thứ nhất trong Hoạt động 1, người dùng phải biết rõ cấu trúc tệp dữ liệu, từ đó lập trình lấy ra đoạn dữ liệu liên quan tới từng bản nhạc để xử lí. Việc làm này rất mất công sức, lại dễ nhầm lẫn. Đây là kiểu lập trình "theo thủ tục" vì phải biết rõ thủ tục truy cập dữ liệu đề xây dựng thuật toán. Hơn thế nữa, ở một bài toán khác có nội dung tương tự, ví dụ lập danh sách các học sinh có điểm trung bình môn Toán trên 8 lại phải viết lại chương trình với một thủ tục tương tự.

Với cách thực hiện thứ hai trong Hoạt động 1, người dùng chỉ cần viết ra yêu cầu dưới dạng một câu truy vấn – muốn làm gì, chứ không phải nghĩ cách để thực hiện yêu cầu ấy. Mọi việc còn lại sẽ do hệ QTCSDL giải quyết: tiếp nhận yêu cầu ở dạng xâu truy vẫn rồi lấy ra kết quả theo đúng yêu cầu.

Ngôn ngữ truy vấn định chuẩn cho việc định nghĩa, cập nhật, truy xuất và điều khiển dữ liệu từ các CSDL quan hệ là SQL (Structured Query Language) được xây

(Trang 70)

dựng từ những năm 1970. SQL đã trở thành ngôn ngữ truy vấn tiêu chuẩn mà hầu hết các hệ QTCSDL đều sử dụng. Điều đó có nghĩa là chúng ta có thể dùng SQL để thao tác trên hầu hết các hệ QTCSDL phổ biến như Oracle, SQL server, MySQL, PostGreSQL,... SQL có ba thành phần là DDL (Data Definition Language – ngôn ngữ định nghĩa dữ liệu), DML (Data Manipulation Language – ngôn ngữ thao tác dữ liệu) và DCL (Data Control Language - ngôn ngữ kiểm soát dữ liệu).

Chúng ta sẽ sử dụng SQL để minh hoạ cách thức quản trị CSDL.

2. KHỞI TẠO CSDL

Thành phần DDL của SQL cung cấp các câu truy vấn khởi tạo CSDL, khởi tạo bảng, thiết lập các khoá, tóm tắt trong các bảng sau.

Bảng 14.1. Các câu truy vấn CSDL

Câu truy vấn DDL Ý nghĩa
CREATE DATABASE Khởi tạo CSDL
CREATE TABLE Khởi tạo bảng
ALTER TABLE Thay đổi định nghĩa bảng
PRIMARY KEY Khai báo khóa chính
FOREIGN KEY... REFERENCES... Khai báo khóa ngoài

Các kiểu dữ liệu được sử dụng cho các thuộc tính của các bảng trong SQL.

Bảng 14.2. Kiểu dữ liệu

Kiểu dữ liệu Ý nghĩa
CHAR (n) hay CHARACTER (n) Xâu kí tự có độ dài cố định n kí tự, nếu xâu có ít hơn n kí tự, các kí tự trống được thêm vào phía bên phải
VARCHAR (n) Xâu kí tự có độ dài thay đổi, không vượt quá n kí tự
BOOLEAN Kiểu lôgic có giá trị Đúng (1) hay ai (0)
INT hay INTEGER Số nguyên
REAL Số thực dấu phẩy động
DATE Ngày tháng, dạng 'YYYY-MM-DD'
TIME Thời gian, dạng 'HH:MM:SS''

Ví dụ: Khởi tạo CSDL âm nhạc, đặt tên là music và khởi tạo các bảng Nhạc sĩ, Bản nhạc có tên tương ứng là nhacsi và bannhac.

Khởi tạo CSDL music

Khởi tạo bảng bannhac

Thêm khoá chính Mid cho bảng bannhac

Khởi tạo bảng nhacsi

Các dấu chấm phẩy ";" được dùng để kết thúc câu truy vấn

(Trang 71)

1. Hãy viết câu truy vấn tạo bảng Ca sĩ như đã mô tả trong Bài 11 với tên bảng là casi.

2. Hãy viết câu truy vấn thêm khoá chính Sid cho bảng casi.

3. CẬP NHẬT VÀ TRUY XUẤT DỮ LIỆU

Thành phần DML của SQL cung cấp các câu truy vấn cập nhật và truy xuất dữ liệu. Sau đây là một vài câu truy xuất dữ liệu đề minh hoạ.

Bảng 14.3. Câu truy xuất dữ liệu

Câu truy xuất dữ liệu Ý nghĩa

SELECT <dữ liệu cần lấy>

FROM <tên bảng>

WHERE <điều kiện chọn>

ORDER BY <tên trường>

INNER JOIN

<dữ liệu cần lấy> có thể là danh sách các trường hay hàm nào đó với các biến là trường trong bảng

Chỉ định chọn chỉ các dòng thỏa mãn điều kiện xác định

Sắp xếp các dòng kết quả theo thứ tự chỉ định

Liên kết các bảng theo điều kiện

Một số câu truy vấn cập nhật dữ liệu cho trong Bảng 14.4.

Bảng 14.4. Các câu truy vấn cập nhật dữ liệu

Câu truy vấn cập nhật dữ liệu

Ý nghĩa

INSERT INTO <tên bảng>

VALUES <danh sách giá trị>

Thêm dữ liệu vào bàng <tên bảng> với giá trị lấy từ <danh sách giá trị>

DELETE FROM <tên bảng>

WHERE <điều kiện>

Xoá các dòng trong bàng <tên bảng> thoả mãn <điều kiện>

UPDATE <tên bảng>

SET <tên trường> = <giá trị

Cập nhật <giá trị> cho trường có tên là <tên trường> trong bảng tên bảng>

Ví dụ:

Chọn ra từ bảng bannhac các dòng có Aid = 1, ở mỗi dòng chỉ lấy giá trị các cột Mid TenBN. Sắp xếp các dòng kết quả theo thứ tự TenBN.

Chọn lấy tất cả các dòng từ bảng bannhac, liên kết với bảng nhacsi theo khoá Aid, ở mỗi dòng lấy cột TenBN ở bảng bannhac và cột TenNS ở bảng nhacsi.

Thêm vào bảng nhacsi hai dòng mới.

Xoá dòng có Mid = '0005' trong bảng bannhac.

Thay đổi giá trị cột TenNS thành 'Hoàng Hiệp' ở dòng có cột Aid = 6 trong bảng nhacsi.

(Trang 72)

Giả sử đã có bằng diemtoan_11A, trong đó có cột tb ghi điểm trung bình môn Toán của tất cả các học sinh lớp 11A. Khi đó câu truy vấn sau lấy ra điểm trung bình cộng môn Toán của tất cả các học sinh lớp 11A.

SELECT AVG(tb) FROM diemtoan_11A;

1. Hãy viết câu truy vấn lấy tất cả các dòng của bảng nhacsi.

2. Hãy viết câu truy vấn thêm các dòng cho bảng casi với các giá trị là ('TK', 'Nguyễn Trung Kiên'), ('QD', 'Quý Dương'), ('YM', 'Y Moan').

4. KIỂM SOÁT QUYỀN TRUY CẬP

Thành phần DCL của SQL cung cấp các câu truy vấn kiểm soát quyền người dùng đối với CSDL, tóm tắt trong Bảng 14.5.

Bảng 14.5. Câu truy vấn kiểm soát quyền người dùng

Mẫu câu truy vấn Ý nghĩa
GRANT Cấp quyền cho người dùng
REVOKE Thu hồi quyền đối với người dùng

Ví dụ:

Cấp quyền dùng truy vấn SELECT đối với tất cả các bảng trong CSDL music cho người dùng guest.

Thu hồi quyền CREATE và ALTER cho bảng bannhac trong CSDL music đối với người dùng mod.

1. Hãy viết câu truy vấn cấp quyền UPDATE đối với tất cả các bảng trong CSDL music cho người dùng mod.

2. Hãy viết câu truy vẫn thu hồi quyền DELETE đối bằng nhacsi trong CSDL music cho người dùng mod.

LUYỆN TẬP

1. Hãy viết câu truy vấn tạo bảng Bản thu âm (banthuam) như đã mô tả trong Bài 13.

2. Viết câu truy vấn tạo khoá ngoài Mid và Sid cho bảng banthuam.

3. Viết câu truy vấn lấy ra tất cả các dòng trong liên kết bảng banthuam với bảng bannhac, mỗi dòng lấy các cột: Mid, Sid của bảng banthuam và cột TenBN của bảng bannhac.

VẬN DỤNG

Viết câu truy vấn lấy ra tất cả các dòng trong liên kết bằng banthuam với bảng bannhac và bằng casi, mỗi dòng lấy các cột: Mid, Sid của bảng banthuam, cột TenBN của bảng bannhac và TenCS của bảng casi.

Xem và tải xuống trọn bộ sách giáo khoa Tin học 11 - Định hướng khoa học máy tính

Tổng số đánh giá:

Xếp hạng: / 5 sao

Sách giáo khoa liên quan

Ngữ Văn 11 - Tập Một

Ngữ Văn Lớp 11 (Tập 1) Chương Trình Cơ Bản

Công Nghệ 11

Công nghệ 11 - NXB Giáo Dục

Địa Lí 11

Địa Lí 11 - NXB Giáo dục

Địa Lí 11 (Nâng Cao)

Địa Lí 11 Nâng cao - NXB Giáo dục

Lịch Sử 11

Lịch sử 11 - NXB Giáo Dục

Sinh Học 11

Sinh học 11 - NXB Giáo dục

Giải bài tập Toán 11 Tập 1

Giải bài tập Toán lớp 11 - Tập 1

Giải bài tập Vật lý 11

Giải bài tập Vật lý 11

Giải bài tập Sinh học 11

Giải bài tập Sinh học 11

Gợi ý cho bạn

vo-bai-tap-toan-1-tap-mot-39

Vở bài tập TOÁN 1 - Tập Một

Sách Lớp 1 Kết Nối Tri Thức

giai-tich-12-nang-cao-749

Giải Tích 12 (Nâng Cao)

Sách Lớp 12 NXB Giáo Dục Việt Nam, gồm 4 chương

giao-duc-the-chat-7-875

Giáo Dục Thể Chất 7

Sách Lớp 7 Cánh Diều

cong-nghe-3-261

Công Nghệ 3

Sách Lớp 3 Cánh Diều

vo-bai-tap-mi-thuat-1-20

Vở bài tập MĨ THUẬT 1

Sách Lớp 1 Chân Trời Sáng Tạo

Nhà xuất bản

canh-dieu-1

Cánh Diều

Bộ sách giáo khoa của Nhà xuất bản Cánh Diều

chan-troi-sang-tao-2

Chân Trời Sáng Tạo

Bộ sách giáo khoa của Nhà xuất bản Chân Trời Sáng Tạo

ket-noi-tri-thuc-voi-cuoc-song-3

Kết Nối Tri Thức Với Cuộc Sống

Sách giáo khoa của nhà xuất bản Kết Nối Tri Thức Với Cuộc Sống

giao-duc-viet-nam-5

Giáo Dục Việt Nam

Bộ Sách Giáo Khoa của Nhà Xuất Bản Giáo Dục Việt Nam

sach-bai-giai-6

Sách Bài Giải

Bài giải cho các sách giáo khoa, sách bài tập

sach-bai-tap-7

Sách Bài Tập

Sách bài tập tất cả các khối lớp

tai-lieu-hoc-tap-9

Tài liệu học tập

Đây là tài liệu tham khảo hỗ trợ trong quá trình học tập

global-success-bo-giao-duc-dao-tao-11

Global Success & Bộ Giáo Dục - Đào Tạo

Bộ sách Global Success & Bộ Giáo Dục - Đào Tạo là sự kết hợp giữa ngôn ngữ Tiếng Anh theo lối giảng dạy truyền thống và cập nhật những phương thức quốc tế

nxb-dai-hoc-su-pham-tphcm-12

NXB - Đại Học Sư Phạm TPHCM

NXB - Đại Học Sư Phạm TPHCM

Chủ đề

Liên Kết Chia Sẻ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.