Xem mẫu

  1. Chương 5 NGÔN NGỮ TRUY VẤN CÓ CẤU TRÚC Structured Query Language Giảng viên: Ths. Nguyễn Thị Khiêm Hòa
  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 Khoa Công nghệ Thông tin - Trường Đại học Ngân hàng TP.HCM 2
  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 Khoa Công nghệ Thông tin - Trường Đại học Ngân hàng TP.HCM 3
  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 • SQL-99 Khoa Công nghệ Thông tin - Trường Đại học Ngân hàng TP.HCM 4
  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 Khoa Công nghệ Thông tin - Trường Đại học Ngân hàng TP.HCM 5
  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ệ Khoa Công nghệ Thông tin - Trường Đại học Ngân hàng TP.HCM 6
  7. ĐỊNH NGHĨA LƯỢC ĐỒ CƠ SỞ DỮ LIỆU Định nghĩa lược đồ CSDL trong SQL • Tập hợp các bảng dữ liệu phục vụ cho một ứng dụng Thành phần của lược đồ CSDL • Bảng dữ liệu • Ràng buộc toàn vẹn • Khung nhìn • … Câu lệnh tạo lược đồ CSDL CREATE SCHEMA AUTHORIZATION CREATE DATABASE Khoa Công nghệ Thông tin - Trường Đại học Ngân hàng TP.HCM 7
  8. ĐỊNH NGHĨA BẢNG DỮ LIỆU Bảng dữ liệu trong SQL • 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 tin dữ liệu của DBMS • Cho phép có các bộ trùng nhau Khoa Công nghệ Thông tin - Trường Đại học Ngân hàng TP.HCM 8
  9. ĐỊNH NGHĨA BẢNG DỮ LIỆU Thành phần củ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 • … Khoa Công nghệ Thông tin - Trường Đại học Ngân hàng TP.HCM 9
  10. ĐỊNH NGHĨA BẢNG DỮ LIỆU Câu lệnh tạo bảng dữ liệu trong SQL CREATE TABLE ( [], [], … [] ) Khoa Công nghệ Thông tin - Trường Đại học Ngân hàng TP.HCM 10
  11. ĐỊNH NGHĨA CÁC KIỂU DỮ LIỆU Các kiểu dữ liệu trong SQL • 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 Khoa Công nghệ Thông tin - Trường Đại học Ngân hàng TP.HCM 11
  12. ĐỊNH NGHĨA CÁC KIỂU DỮ LIỆU Các kiểu dữ liệu trong SQL • 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 Khoa Công nghệ Thông tin - Trường Đại học Ngân hàng TP.HCM 12
  13. ĐỊNH NGHĨA CÁC KIỂU DỮ LIỆU Các kiểu dữ liệu trong SQL • 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 Khoa Công nghệ Thông tin - Trường Đại học Ngân hàng TP.HCM 13
  14. HOẠT ĐỘNG 1: Bài tập nhóm • 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” Khoa Công nghệ Thông tin - Trường Đại học Ngân hàng TP.HCM 14
  15. ĐỊNH NGHĨA RÀNG BUỘC TOÀN VẸN • Các hình thức ràng buộc toàn vẹn • NOT NULL • NULL • DEFAULT • CHECK • UNIQUE • PRIMARY KEY • FOREIGN KEY / REFERENCES • Cú pháp định nghĩa ràng buộc toàn vẹn CONSTRAINT Khoa Công nghệ Thông tin - Trường Đại học Ngân hàng TP.HCM 15
  16. RÀNG BUỘC TOÀN VẸN DỮ LIỆU Ràng buộc NOT NULL • 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 Khoa Công nghệ Thông tin - Trường Đại học Ngân hàng TP.HCM 16
  17. RÀNG BUỘC TOÀN VẸN DỮ LIỆU Giá trị mặc định • 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: • CONSTRAINT DEFAULT () Khoa Công nghệ Thông tin - Trường Đại học Ngân hàng TP.HCM 17
  18. RÀNG BUỘC TOÀN VẸN DỮ LIỆU Ràng buộc miền giá trị • 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 đó • Cú pháp: • CONSTRAINT CHECK ( IN )
  19. RÀNG BUỘC TOÀN VẸN DỮ LIỆU Ràng buộc về khóa • Quan hệ có khóa chính và khóa phụ • Cú pháp: • CONSTRAINT PRIMARY KEY • CONSTRAINT PRIMARY KEY(…) • UNIQUE
  20. RÀNG BUỘC TOÀN VẸN DỮ LIỆU Ràng buộc tham chiếu (khóa ngoại) • 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: • CONSTRAINT FOREIGN KEY ( ) REFERENCES () ON UPDATE CASCADE ON DELETE SET NULL
nguon tai.lieu . vn