1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Cơ sở dữ liệu: Ngôn ngữ truy vấn có cấu trúc - ThS. Trịnh Hoàng Nam (2018)

8 14 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 8
Dung lượng 428,71 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài giảng Cơ sở dữ liệu: Ngôn ngữ truy vấn có cấu trúc cung cấp cho người học các kiến thức về định nghĩa lược đồ CSDL trong SQL, thành phần của lược đồ CSDL, câu lệnh tạo lược đồ CSDL,... Mời các bạn cùng tham khảo.

Trang 1

NGÔN NGỮ TRUY VẤN CÓ CẤU TRÚC

CƠ SỞ DỮ LIỆU

Ths Trịnh Hoàng Nam, namth@buh.edu.vn

ĐỊNH NGHĨA DỮ LIỆU & CÁC KIỂU

DỮ LIỆU

• Tập hợp các bảng dữ liệu phục vụ cho một ứng dụng

Định nghĩa lược đồ CSDL trong SQL

• Bảng dữ liệu

• Ràng buộc toàn vẹn

• Khung nhìn

• …

Thành phần của lược đồ CSDL

Câu lệnh tạo lược đồ CSDL

CREATE SCHEMA COMPANY AUTHORIZATION SA

ĐỊNH NGHĨA DỮ LIỆU & CÁC KIỂU

DỮ LIỆU

• Quan hệ và các bộ dữ liệu của nó được tạo

và lưu trữ vật lý trong tệp dữ liệu của DBMS

Bảng dữ liệu trong SQL

Thành phần của bảng dữ liệu

Trang 2

Ths Trịnh Hoàng Nam, namth@buh.edu.vn

• Cho phép có các bộ trùng nhau

Bảng dữ liệu trong SQL

Câu lệnh tạo bảng dữ liệu trong

SQL

CREATE TABLE tên_bảng (<ds thuộc tính>)

Ths Trịnh Hoàng Nam, namth@buh.edu.vn

ĐỊNH NGHĨA DỮ LIỆU & CÁC KIỂU

DỮ LIỆU

• Kiểu dữ liệu số

• Kiểu dữ liệu chuỗi ký tự

• Kiểu dữ liệu chuỗi bit

• Kiểu dữ liệu Boolean

• Kiểu dữ liệu Datetime

Các kiểu dữ liệu trong SQL

ĐỊNH NGHĨA DỮ LIỆU & CÁC KIỂU

DỮ LIỆU

Ví dụ về lệnh tạo bảng dữ liệu

Trang 3

Ths Trịnh Hoàng Nam, namth@buh.edu.vn

CÁC LOẠI RÀNG BUỘC TOÀN VẸN

DỮ LIỆU

• Yêu cầu một thuộc tính không được phép có giá trị là

null

• Một thuộc tính là thành phần của khóa chính thì mặc

nhiên là not null

Ràng buộc NOT NULL

Ví dụ

Ths Trịnh Hoàng Nam, namth@buh.edu.vn

CÁC LOẠI RÀNG BUỘC TOÀN VẸN

DỮ LIỆU

• Giá trị được sử dụng trong trường hợp bộ mới thêm

vàonhận giá trị null tại thuộc tính được khai báo là

mặc định

Giá trị mặc định

Ví dụ

CÁC LOẠI RÀNG BUỘC TOÀN VẸN

DỮ LIỆU

• Giá trị của một thuộc tính phải nằm trong miền giá

trị của thuộc tính đó

Ràng buộc miền giá trị

Ví dụ

Trang 4

Ths Trịnh Hoàng Nam, namth@buh.edu.vn

• Hai bộ dữ liệu trong quan hệ không thể có giá trị bằng

nhautại (các) thuộc tính của khóa

• Quan hệ có thể có nhiều khóa, gồm một khóa chính và

nhiều khóa phụ (duy nhất)

Ràng buộc khóa trong SQL

Ví dụ

Ths Trịnh Hoàng Nam, namth@buh.edu.vn

CÁC LOẠI RÀNG BUỘC TOÀN VẸN

DỮ LIỆU

• Tên tường minh của ràng buộc toàn vẹn rất hữu ích

khi có nhucầu muốn chỉnh sửa hoặc xóa các ràng

buộc hiện hữu

Đặt tên cho ràng buộc toàn vẹn trong SQL

Ví dụ

CÁC LOẠI RÀNG BUỘC TOÀN VẸN

DỮ LIỆU

• Ràng buộc liên quan đến các giá trị thành phần của

từng bộ dữ liệu được xét

Ràng buộc toàn vẹn trên bộ trong SQL

Ví dụ

Trang 5

Ths Trịnh Hoàng Nam, namth@buh.edu.vn

CÁC LOẠI RÀNG BUỘC TOÀN VẸN

DỮ LIỆU

• Một giá trị muốn xuất hiện trong khung cảnh này cần

phải xuất hiện trong một khung cảnh khác

• Thuộc tính tham chiếu đi là khóa ngoại, thuộc tính được

thamchiếu tới phải là khóa (chính hoặc phụ)

Ràng buộc tham chiếu trong SQL

Ví dụ

Ths Trịnh Hoàng Nam, namth@buh.edu.vn

CÁC LOẠI RÀNG BUỘC TOÀN VẸN

DỮ LIỆU

Dò tìm vi phạm ràng buộc tham chiếu

• Cơ chế mặc định

• Cơ chế thay thế

• Cơ chế Set Null

Xử lý vi phạm ràng buộc tham chiếu

RBTV Thêm mới Chỉnh sửa Xóa bỏ

CÁC CÂU LỆNH THAY ĐỔI LƯỢC

ĐỒ CƠ SỞ DỮ LIỆU

• Xóa toàn bộ dữ liệu trong bảng cùng với lược đồ của

bảng đó

• Việc xóa bảng chỉ thành công khi không nó không được

thamchiếu tới bởi bất kỳ bảng nào khác

Lệnh xóa bảng dữ liệu trong SQL

Ví dụ

Trang 6

Ths Trịnh Hoàng Nam, namth@buh.edu.vn

• Thay đổi cấu trúc bảng dữ liệu bằng cách thêm mới,

sửa, xóa thuộc tính, ràng buộc toàn vẹn, …

Lệnh sửa cấu trúc bảng dữ liệu trong SQL

Ví dụ

Ths Trịnh Hoàng Nam, namth@buh.edu.vn

CÁC LỆNH CẬP NHẬT TRONG

SQL

• Thêm mới một (số) bộ dữ liệu vào quan hệ

• Bộ dữ liệu với các giá trị được liệt kê cùng trình tự với

cácthuộc tính tương ứng được xác định trong câu

lệnh tạo quan hệ

• Bắt buộc phải cung cấp giá trị đối với các thuộc tính

được khai báo là khác NULL và không có giá trị mặc

định

Lệnh INSERT

CÁC LỆNH CẬP NHẬT TRONG

SQL

• Thêm mới một bộ dữ liệu vào quan hệ EMPLOYEE

Ví dụ 21

INSERT INTO

EMPLOYEE

VALUES

(‘30121050004’,N’Mai Duy An’, 30000, ‘F’,

Trang 7

Ths Trịnh Hoàng Nam, namth@buh.edu.vn

CÁC LỆNH CẬP NHẬT TRONG

SQL

• Xóa một (số) bộ thỏa mãn điều kiện được xác định trong mệnh

đề WHERE ra khỏi quan hệ

• Xóa tất cả các bộ ra khỏi quan hệ khi không có mệnh đề

WHERE trong câulệnh

Lệnh DELETE

• Câu lệnh sau đây xóa các thân nhân của nhân viên có mã số

‘30121050180’

Ví dụ 21

DELETE FROMDEPENDENT WHEREESSN = ‘30121050180’

Ths Trịnh Hoàng Nam, namth@buh.edu.vn

CÁC LỆNH CẬP NHẬT TRONG

SQL

• Xóa một (số) bộ thỏa mãn điều kiện được xác định trong mệnh

đề WHERE ra khỏi quan hệ

• Xóa tất cả các bộ ra khỏi quan hệ khi không có mệnh đề

WHERE trong câulệnh

Lệnh DELETE

• Câu lệnh sau đây xóa tất cả thân nhân của các nhân viên trong

phòng có mãsố 1

Ví dụ 22

DELETE FROMDEPENDENT

WHEREESSNIN ( SELECTESSN

FROMEMPLOYEE

WHEREDNum=1)

CÁC LỆNH CẬP NHẬT TRONG

SQL

• Thay đổi giá trị một (số) thuộc tính của một (số) bộ thỏa mãn

điều kiện được xác định trong mệnh đề WHERE

• Thay đổi tất cả các bộ trong quan hệ khi không có mệnh đề

WHERE trong câulệnh

Lệnh UPDATE

• Thay đổi địa điểm và đơn vị quản lý của dự án có mã số là 10

Ví dụ 23

Trang 8

Ths Trịnh Hoàng Nam, namth@buh.edu.vn

• Thay đổi giá trị một (số) thuộc tính của một (số) bộ thỏa mãn

điều kiện được xác định trong mệnh đề WHERE

• Thay đổi tất cả các bộ trong quan hệ khi không có mệnh đề

WHERE trong câulệnh

Lệnh UPDATE

• Tăng lương cho mọi nhân viên của phòng Nghiên cứu lên 10%

lương hiện tại

Ví dụ 23

UPDATEEMPLOYEE

SET ESalary = ESalary *1.1

WHEREDNumIN ( SELECTDNumber

FROM DEPARTMENT

WHEREDName = N’Phòng Nghiên cứu’)

Ngày đăng: 10/05/2021, 23:00

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w