1. Trang chủ
  2. » Giáo Dục - Đào Tạo

bài giảng cơ sở dữ liệu chương 5: ngôn ngữ truy vấn có cấu trúc - ths. nguyễn thị khiêm hòa

28 631 0

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 28
Dung lượng 369,54 KB

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

Nội dung

NGÔN NGỮ ĐỊNH NGHĨA DỮ LIỆU • Định nghĩa lược đồ CSDL • Các ràng buộc toàn vẹn • Cập nhật lược đồ dữ liệu... NGÔN NGỮ ĐỊNH NGHĨA LƯỢC ĐỒ CSDL • Là ngôn ngữ mô tả • Lược đồ cho mỗi quan h

Trang 1

Chương 5

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

Structured Query Language

Trang 2

NỘI DUNG

• Ngôn ngữ định nghĩa dữ liệu

• Ngôn ngữ truy vấn dữ liệu

• Ngôn ngữ cập nhật dữ liệu

Trang 3

NGÔN NGỮ SQL

• Ngôn ngữ đại số quan hệ:

• Phải chỉ định cách thức truy vấn: khó khăn cho người

sử dụng

• Cần xây dựng một ngôn ngữ cấp cao: người sử dụng chỉ cần khai báo nội dung truy vấn

Trang 4

NGÔN NGỮ SQL

• Ngôn ngữ cấp cao

• Người sử dụng chỉ cần đưa ra nội dung cần truy vấn

• Được phát triển bởi IBM (1970s)

• Được gọi là SEQUEL

• Được ANSI công nhận và phát triển thành chuẩn

• SQL-86

• SQL-92

Trang 5

NGÔN NGỮ ĐỊNH NGHĨA DỮ LIỆU

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

• Các ràng buộc toàn vẹn

• Cập nhật lược đồ dữ liệu

Trang 6

NGÔN NGỮ ĐỊNH NGHĨA LƯỢC ĐỒ CSDL

• Là ngôn ngữ mô tả

• Lược đồ cho mỗi quan hệ

• Miền giá trị tương ứng cho mỗi thuộc tính

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

• Chỉ mục trên mỗi quan hệ

Trang 7

ĐỊNH NGHĨA LƯỢC ĐỒ CƠ SỞ DỮ LIỆU

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

CREATE SCHEMA <Tên_lược đồ_CSDL > AUTHORIZATION <User_name> CREATE DATABASE <Tên_CSDL >

Trang 9

ĐỊNH NGHĨA BẢNG DỮ LIỆU

• Các thuộc tính

• Miền giá trị của từng thuộc tính

• Các ràng buộc toàn vẹn trên bảng

• …

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

Trang 10

ĐỊNH NGHĨA BẢNG DỮ LIỆU

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

CREATE TABLE <Tên_bảng>

(

<Tên_cột> <Kiểu_dữ_liệu> [<RBTV>],

<Tên_cột> <Kiểu_dữ_liệu> [<RBTV>],

… [<RBTV>]

)

Trang 11

ĐỊNH NGHĨA 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

Trang 12

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

• Kiểu dữ liệu số

• Số nguyên: BIGINT, INT, SMALLINT, TINYINT

• Số thực: FLOAT, DOUBLE PRECISION, DECIMAL(i,j)

• Kiểu Bit

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

Trang 13

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

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

• Char(n), nchar(n)

• Varchar(n), nvarchar(n)

• Text, ntext

• Kiểu Boolean

• Kiểu ngày tháng: datetime

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

Trang 14

HOẠT ĐỘNG 1:

• Thực hiện tạo CSDL cho bài toán QUẢN

LÝ DỰ ÁN được cho trong file “Bai tap

Chapter5_Dinh nghia DL.docx”

Bài tập nhóm

Trang 15

ĐỊNH NGHĨA RÀNG BUỘC TOÀN VẸN

• FOREIGN KEY / REFERENCES

• Cú pháp định nghĩa ràng buộc toàn vẹn

CONSTRAINT <Tên_RBTV> <RBTV>

Trang 16

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

Trang 17

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ào nhận giá trị null tại thuộc tính được khai báo là mặc định

• Cú pháp:

• <Tên_thuộc_tính> <Kiểu_DL> CONSTRAINT

<TênRBTV_DF > DEFAULT (<giá trị>)

Giá trị mặc định

Trang 18

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 đó

Trang 19

RÀNG BUỘC TOÀN VẸN DỮ LIỆU

• Quan hệ có khóa chính và khóa phụ

• Cú pháp:

• <Tên_thuộc_tính> <Kiểu_DL> CONSTRAINT

<TênRBTV_PK > PRIMARY KEY

• CONSTRAINT <TênRBTV_PK > PRIMARY KEY(…)

• <Tên_thuộc_tính> <Kiểu_DL> UNIQUE

Ràng buộc về khóa

Trang 20

RÀNG BUỘC TOÀN VẸN DỮ LIỆU

• Thuộc tính làm khóa chính của quan hệ này có thể dùng tham chiếu cho quan hệ khác

• Cú pháp:

• <Tên_thuộc_tính> <Kiểu_DL> CONSTRAINT

<TênRBTV_FK > FOREIGN KEY (<Tên_thuộc_tính> )

Ràng buộc tham chiếu (khóa ngoại)

Trang 21

RÀNG BUỘC TOÀN VẸN DỮ LIỆU

DIA_CHI N VARCHAR (50), PHAI CHAR (3) CONSTRAINT NV_PHAI_CHK

LUONG INT CONSTRAINT NV_LUONG_DF DEFAULT (10000), MA_NQL CHAR (9),

PHG INT

Trang 22

RÀNG BUỘC TOÀN VẸN DỮ LIỆU

Ví dụ

MA_NVIEN CHAR (9), SODA INT ,

Trang 23

HOẠT ĐỘNG 2:

• Thực hiện tạo các ràng buộc toàn vẹn cho

bài toán QUẢN LÝ DỰ ÁN được cho trong

file “Bai tap Chapter5_Dinh nghia DL.docx”

Bài tập nhóm

Trang 24

CẬP NHẬT 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 tham chiếu tới bởi bất kỳ bảng nào khác

Xóa bảng dữ liệu

Cú pháp:

Trang 25

CẬP NHẬT LƯỢC ĐỒ CƠ SỞ DỮ LIỆU

• Thay đổi: thêm mới, xóa, sửa các thuộc tính của bảng và ràng buộc toàn vẹn…

Thay đổi cấu trúc bảng dữ liệu

Trang 26

CẬP NHẬT LƯỢC ĐỒ CƠ SỞ DỮ LIỆU

• ALTER TABLE <Tên_bảng> ADD <Tên_thuộc_tính> <Kiểu_DL>

• ALTER TABLE <Tên_bảng> DROP COLUMN <Tên_thuộc_tính>

• ALTER TABLE <Tên_bảng> ADD CONSTRAINT …

• ALTER TABLE <Tên_bảng> DROP CONSTRAINT

Trang 27

HOẠT ĐỘNG 3:

• Chỉnh sửa một số ràng buộc toàn vẹn,

thuộc tính trong bài toán QUẢN LÝ DỰ ÁN

được cho trong file “Bai tap Chapter5_Dinh nghia DL.docx”

Bài tập nhóm

Ngày đăng: 02/07/2014, 17:43

HÌNH ẢNH LIÊN QUAN

Bảng dữ liệu trong SQL - bài giảng cơ sở dữ liệu chương 5: ngôn ngữ truy vấn có cấu trúc - ths. nguyễn thị khiêm hòa
Bảng d ữ liệu trong SQL (Trang 8)

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