« Home « Kết quả tìm kiếm

Tổng quan Cơ sở dữ liệu- P3


Tóm tắt Xem thử

- Chương 3: CÁC NGÔN NGỮ THAO TÁC DỮ LIỆU.
- 3.1 Ngôn ngữ truy vấn dữ liệu SQL.
- Trong mục này trình bày ngôn ngữ dữ liệu (Structered Query Language), SQL là ngôn ngữ con dữ liệu đưọc xác nhận là rất mạnh , phổ dụng và lại dễ sử dụng .
- Các mệnh đề của ngôn ngữ SQL sẽ được trình bày chi tiết bằng ví dụ..
- Các thuật ngữ trong Cơ Sở Dữ Liệu quan hệ như quan hệ , thuộc tính , bộ.
- Chúng ta sẽ xem các chức năng cơ bản của một hệ quản trị Cơ Sở Dữ Liệu như cung cấp ngôn ngữ định nghĩa dữ liệu (DDM), Ngôn ngữ thao tác dữ liệu(DML.
- tìm kiếm và bảo vệ dữ liệu được thể hiện trong ngôn ngữ SQL như thế nào..
- Định nghĩa dữ liệu.
- Trong SQL cho phép người sử dụng tạo các dữ liệu như Bảng(table), Khung nhìn(View), và các tập chỉ số(Index).
- Type: Kiểu dữ liệu cho thuộc tính.
- Một số loại dữ liệu thường dùng như:.
- Từ khóa number trong SQL đưọc dùng trong dạng dữ liệu này..
- varchar(n) xâu ký tự có độ dài biến đổi, độ dài xâu có thể từ 0 đến n và được xác định tại thời điểm đưa dữ liệu vào lưu trữ.
- date : dữ liệu dạng ngày tháng.
- Ví Dụ:.
- Tạo Cơ Sở Dữ Liệu gồm 3 bảng S(nhà cung cấp SUPPLIERS), P ( Sản phẩm PRODUCTS) và bảng SP (Cung cấp) như sau:.
- Vào dữ liệu.
- Có ba cách để vào dữ liệu cho bảng như sau INSERT INTO S(S#,SNAME,AGES,CITY) VALUE(1,’Thanh Huong’, 30,’ TP Ho Chi Minh’) Nếu vị trí của các cột trong bảng cố định, ta có thể viết INSERT INTO S.
- Người vào dữ liệu có thể quên vị trí các cột, khi đó ta có thể biểu diễn như sau:.
- Tìm Kiếm dữ liệu Trong SQL.
- Đây là chức năng cơ bản nhất của SQL, cho phép người sử dụng tìm kiếm các thông tin trên Cơ Sở Dữ Liệu với Câu lệnh SELECT...FROM....WHERE.
- Cú pháp:.
- Giải thích các tham số bằng các ví dụ.
- 2.1 Tìm kiếm theo câu hỏi đơn giản Tìm kiếm không điều kiện:.
- Cho biết danh sách các nhà cung cấp:.
- Để bảng kết quả sau khi thực hiện một mệnh đề SQL đúng là một quan hệ (Có nghĩa là không có các bộ trùng nhau) thì phải có từ khóa DISTINCT..
- Tìm kiếm với điều kiện đơn giản.
- Tìm mã số của những nhà cung cấp đã cung cấp mặt hàng P2 SELECT S#.
- FROM SP WHERE P#=’P2’.
- Tìm kiếm có xử lý xâu ký tự.
- ví dụ là Hoa hay Hoan khi đó ta có thể viết SELECT.
- Trong SQL sử dụng ký hiệu.
- Tìm những mặt hàng bán trước ngày ngày SELECT P#.
- SDATE =10 Tìm kiếm sử dụng IN và BETWEEN.
- Tìm những mặt hàng đã cung cấp có giá từ 1000 đến 2000 SELECT P#.
- Tìm mã số những nhà cung cấp đã cung cấp ít nhất một trong các mặt hàng P1,P2,P3.
- Cũng giống như các ngôn ngữ Cơ Sở Dữ Liệu khác, Trong SQL có các hàm mẫu gồm COUNT, MAX, MIN, SUM, AVG.
- có nghĩa là đếm số bảng ghi thỏa mãn yêu cầu tìm kiếm mà không quan tâm đến bất kỳ cột nào..
- Cho biết số lần mặt hàng P2 đã được cung cấp SELECT COUNT(*).
- Tìm hiệu số mặt hàng P1 bán một lần nhiều nhất và một lần ít nhất của hãng S1 SELECT MAX(QTY.
- Tìm kiếm nhờ mệnh đề GROUPE BY.
- Tìm mã số những mặt hàng mà mỗi nhà cung cấp đã cung cấp cho khách hàng..
- trong mệnh đề này bảng dữ liệu SP được lấy ra, sau đó phân thành nhóm theo mã số của người cung cấp (S.
- Tìm kiếm nhờ mệnh đề HAVING.
- Mệnh đề HAVING thường được sử dụng cùng mệnh đề GROUP BY.
- Biểu thức điều kiện này không tác động vào toàn bảng được chỉ ra ở mệnh đề FROM mà chỉ tác độnầnnnn lượt đến từng nhóm các bản ghi đã chỉ ra tại mệnh đề GOUP BY..
- Ví dụ: Tìm mã số những nhà cung cấp đã cung cấp ít nhất hơn hai mặt hàng SELECT S#.
- HAVING CUONT (DISTINCT P#)>2 Tìm kiếm có sắp xếp.
- Tìm tên các mặt hàng màu đỏ và sắp xếp theo thứ tự của mã số mặt hàng SELECT PNAME,P#.
- Mệnh đề ORDER BY cho phép ta să õp xếp các cột theo thứ tự tăng dần (ASC) hoặc giảm dần (DESC), ngầm định là ASC.
- Mệnh đề ORDER BY có thể sắp xếp theo nhiều cột.
- Nếu nó đứng sau mệnh đề GROUP BY thì miền tác động là từng nhóm của cột được chỉ ra trong mệnh đề GROUP BY.
- Nếu cột sắp xếp có mặt ở mệnh đề SELECT thì trong mệnh đề ORDER BY có thể chỉ cần chỉ ra số thứ tự của cột đó trong danh sách tham chiếu là đủ..
- trong ví dụ trên ta có thể viết SELECT PNAME,P#.
- Tìm kiếm với câu hỏi phức tạp.
- Trong phần này sẽ trình bày việc tìm kiếm dữ liệu trên nhiều bảng thông qua phép kết nối hoặc việc sử dụng các ánh xạ lồng..
- Khả năng kết nối dữ liệu.
- Tên cột của các bảng khác nhau có thể viết tường minh qua tên bảng..
- Với mỗi mặt hàng được cung cấp , hãy cho biết mã số của mặt hàng và địa chỉ của hãng đã cung cấp mặt hàng đó..
- Ta có thể sử dụng những mệnh đề SELECT lồng nhau Ví dụ:.
- Tìm tên những hãng đã cung cấp mặt hàng P2 SELECT SNAME.
- WHERE P#=’P2’).
- Phép lồng nhau có thể lồng nhiều mức hoặc sử dụng sự dẫn trỏ giữa các khối mỗi khi hướng tới một bảng khác nhau.
- Ví dụ: Tìm tên các hãng không cung ứng mặt hàng P1 SELECT SNAME.
- Trong SQL còn cho phép tìm kiếm trên nhiều bảng nhờ mệnh đè E XISTS (tồn tại) Ví dụ:.
- Tìm kiếm những nhà cung cấp đã cung cấp ít nhất một mặt hàng nào đó SELECT.
- WHERE SP.S#=S.S#) Hoặc có thể biểu diễn bằng cách khác SELECT.
- Tìm kiếm có sử dụng lượng từ ANY và ALL.
- Tìm tên những mặt hàng có mã số mặt hàng là mặt hàng nào đó mà hãng S1 đã cung cấp SELECT PNAME.
- FROM SP WHERE S#=’S1’.
- Tìm tên những nhà cung cấp cung cấp ít nhất một mặt hàng màu đỏ SELECT SNAME.
- WHERE S.S#=SP.S# AND P.P#=SP.P# AND COLOUR=’RED’.
- Tìm mã số những nhà cung cấp số lượng môyt lần một mặt hàng nào đó lớn hơn hoặc bằng số lượng mỗi lần cung ứng của hãng.
- Mệnh đề trên hoàn toàn tương đương với SELECT S#.
- Chú ý mệnh đề NOT EXISTS có giá trị đúng (True) nếu kết quả của câu hỏi sau nó là một tập rỗng..
- Tìm kiếm có chứa phép tính tập hợp.
- Tìm mã số những hãng hiện thời chưa cung cấp một mặt hàng nào cả SELECT S#.
- Tìm tên các hãng cung cấp, cung cấp tất cả các mặt hàng SELECT SNAME.
- Các lệnh cập nhật dữ liệu.
- Ví dụ: có thể bổ sung một tập các bản ghi là kết quả xử lý của một câu hỏi nào đó, chẳn hạn:.
- khi đó mệnh đề sau đây sẽ bổ sung vào bảng P tất cả nững bộ từ bảng W những mặt hàng có mầu đỏ.
- Ví dụ:.
- WHERE S#=’S1’.
- Lọai bỏ cácmặt hàng được cung cấp sau ngày DELETE.
- Loại bỏ các hãng chưa cung cấp mặt hàng nào DELETE.
- Sửa đổi dữ liệu.
- Đổi màu các mặt hàng P2 thành màu vàng UPDATE P.
- Ví dụ: thêm cột DONGIA ( đơn giá) cho bảng SP với kiểu dữ liệu dạng số thập phân ALTER TABLE SP ADD DONGIA DECIMAL(8.2).
- Hủy bỏ chỉ số thì sử dụng mệnh đề DROP INDEX tên_tệp_chỉ_số.
- Ví dụ:tạo tệp chỉ số 13 theo cột City tăng dần của bảng S CREATE INDEX 13 ON S(CITY ASC).
- Trong SQL có thể tổ chức đa chỉ số, tức là tổ chức một tệp chỉ số cho nhiều cột, mỗi cột có thể có chiều tăng giảm khác nhau, thứ tự được tính từ trái qua phải.
- Ví dụ tạo tệp chỉ số 14 cho bảng SP theo cột S# tăng dần và theo cột P# giảm dần CREATE INDEX 14 ON SP(S# ASC, P# DESC).
- Các mệnh đề an toàn dữ liệu.
- Đây là yếu tố không thể thiếu được đối với một hệ quản trị Cơ Sở Dữ Liệu để bảo vệ dữ liệu và ngăn chặn những người không được phép truy cập.
- Dữ Liệu gồm: Read(đọc), Write(ghi), Insert(bổ sung), Update(Sửa đổi),Select(chọn),Delete(xóa)Run(chạy)..
- Việc phân phát quyền truy cập vào Cơ Sở Dữ Liệu do người quản trị Cơ Sở Dữ Liệu do người quản trị Cơ Sở Dữ Liệu (database administrator -DBA) thực hiện bởi lệnh sau:.
- Gián quyền truy cập cho người sử dụng: Lệnh GRANT.
- Từ khóa with GRANT option để cho người được cấp quyền có thể tiếp tục trao quyền cho người khác.
- Ví dụ: trao quyền sử dụng bảng S cho cô Hồng.
- Lệnh này cô Hồng có thể trao quyền đọc bảng S cho người dùng khác Hủy bỏ quyền truy cập:.
- REVOKE Tên_quyền ON tên_bảng FROM Tên_User ví dụ:Rút lại quyền đọc bảng S của User Hồng

Xem thử không khả dụng, vui lòng xem tại trang nguồn
hoặc xem Tóm tắt