intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Quản trị cơ sở dữ liệu Oracle: Chương 2 - GV. Cao Thị Nhâm (HV Ngân hàng)

Chia sẻ: Cvcxbv Cvcxbv | Ngày: | Loại File: PDF | Số trang:33

261
lượt xem
75
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Nội dung chính cảu chương 2 Cơ bản về SQL nằm trong bài giảng Quản trị cơ sở dữ liệu Oracle giới thiệu về SQL, DML, DDL, tối ưu hóa câu lệnh SQL. SQL ngôn ngữ truy vấn mang tính cấu trúc là một loại ngôn ngữ máy tính phổ biến để tạo, sửa, và lấy dữ liệu từ một hệ quản trị cơ sở dữ liệu quan hệ. Ngôn ngữ này phát triển vượt xa so với mục đích ban đầu là để phục vụ các hệ quản trị cơ sở dữ liệu đối tượng-quan hệ. Nó là một tiêu chuẩn ANSI/ISO.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Quản trị cơ sở dữ liệu Oracle: Chương 2 - GV. Cao Thị Nhâm (HV Ngân hàng)

  1. CƠ BẢN VỀ SQL Giảng viên: Cao Thị Nhâm Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  2. Nội dung chính • Giới thiệu về SQL • DML • DDL • Tối ưu hóa câu lệnh SQL 1-2 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng @NhamCT
  3. SQL  SQL: Structured Query Language  Các loại: • DML (Data Manipulation Language) • DDL (Data Definition Language) • Transaction Control • Session Control • System Control 1-3 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng @NhamCT
  4. 1-4 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng @NhamCT
  5. Kiểu dữ liệu Character Numeric Datetime LOB ROWID Binary CHAR (n) NUMBER(m,n) DATE CLOB ROWID RAW(size) NCHAR(n) FLOAT TIMESTAMP WITH NCLOB UROWID LONG TIMEZONE RAW VARCHAR2(n) BINARY_FLOAT TIMESTAMP BLOB WITH LOCAL TIMEZONE NVARCHAR2(n) BINARY_DOUBLE INTERVAL BFILE YEAR[(n)] TO MONTH INTERVAL DAY[(m)] TO SECOND[(n)] 1-5 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng @NhamCT
  6. Truy vấn dữ liệu SELECT [DISTINCT] danh_sách_cột FROM {table_name | view_name} [WHERE điều_kiện] [GROUP BY danh_sách_cột_1] [HAVING điều_kiện_lọc] [ORDER BY danh_sách_cột_2 [ASC | DESC]] 1-6 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng @NhamCT
  7. DEMO 1-7 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng @NhamCT
  8. Phép toán Loại phép toán Phép toán Toán học +, -, *, / So sánh =, {!=, , ^=}, , =  SOME/ANY, ALL Logic NOT, AND, OR Các phép toán ||, LIKE, NOT LIKE chuỗi Các phép toán IN, NOT IN, BETWEEN, EXISTS, IS NULL, IS khác NOT NULL 1-8 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng @NhamCT
  9. Một hàm phục vụ cho truy vấn Chuỗi Số Thời gian Chuyển đổi Rẽ Gộp nhánh LENGTH FLOOR, ADD_MONTHS CAST CASE MIN, CEIL, MAX ROUND LOWER, MOD SYSDATE TO_CHAR DECODE COUNT UPPER LPAD, SQRT EXTRACT TO_DATE AVG RPAD LTRIM, MONTHS_BETWEEN TO_NUMBER SUM RTRIM, TRIM SUBSTR 1-9 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng @NhamCT
  10. Lấy dữ liệu từ nhiều bảng  Sử dụng phép nối • INNER JOIN • NATURAL JOIN • OUTER JOIN – LEFT OUTER JOIN – RIGHT OUTER JOIN – FULL OUTER JOIN 1-10 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng @NhamCT
  11. TRUY VẤN LỒNG (SUBQUERY)  Subquery có thể đặt ở: • SELECT • FROM • WHERE • …. 1-11 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng @NhamCT
  12. Tối ưu hóa truy vấn • Chỉ SELECT những cột và những bảng ghi cần thiết • Sử dụng JOIN thay vì subquery • Tránh truy vấn trên view • Gọi tên cột tường mình • Dùng CASE thay vì sử dụng nhiều truy vấn • Dùng INDEX • Dùng WHERE tốt hơn HAVING • Dùng EXISTS/NOT EXISTS tốt hơn IN/NOT IN • Hạn chế sử dụng các phép tính toán trong mệnh đề WHERE 1-12 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng @NhamCT
  13. Sửa dữ liệu UPDATE Tên_bảng SET cột1 = giá_trị1, …, cộtn = giá_trị_n [WHERE điều_kiện]; 1-13 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng @NhamCT
  14. Xóa dữ liệu  Xóa từng bản ghi DELETE Tên_bảng WHERE [điều_kiện];  Xóa toàn bộ dữ liệu TRUNCATE TABLE Tên_bảng; 1-14 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng @NhamCT
  15. Thêm mới dữ liệu  Nhập giá trị cho mọi cột trong bảng INSERT INTO Tên_bảng VALUES(gt1, gt2, …)  Nhập giá trị cho một số cột trong bảng INSERT INTO Tên_bảng (cột1, cột2, …) VALUES (gt1, gt2, …)  Lấy giá trị từ bảng khác INSERT INTO Tên_bảng (cột1, cột2, …) SELECT cotx, coty, … FROM…WHERE… 1-15 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng @NhamCT
  16. 1-16 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng @NhamCT
  17. Bảng  Tên bảng & tên cột tuân theo quy tắc: • 1-30 kí tự • Bắt đầu bằng chữ cái • Bao gồm chữ cái, số, _, #, $ (hạn chế dùng #, $) • Không dùng những từ có sẵn trong Oracle (NUMBER, INDEX…) • Tên cột phải duy nhất trong bảng • Tên bảng phải duy nhất trong namespace 1-17 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng @NhamCT
  18. Tạo bảng  Ví dụ: 1-18 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng @NhamCT
  19. Constraint  Đảm bảo tính toàn vẹn của dữ liệu  Có thể tạo constraint lúc tạo bảng hoặc sau khi tạo bảng 1-19 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng @NhamCT
  20. Các loại constraint  NOT NULL  UNIQUE • Không cho phép nhập giá trị giống nhau • Oracle tự động tạo unique index cho cột có ràng buộc UNIQUE  PRIMARY KEY • Có thể tạo khóa chính cho 1 hoặc nhiều cột • Oracle tự động tạo unique index cho cột làm khóa chính  FOREIGN KEY • Thiết lập mối quan hệ của 1 bảng với bảng khác  CHECK • Kiểm tra giá trị của một cột thỏa mãn điều kiện cho trước 1-20 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng @NhamCT
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2