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

Bài giảng Cơ sở dữ liệu quan hệ và SQL: Chương 4 - CĐ CNTT Hữu nghị Việt Hàn

Chia sẻ: Nguyễn Hà | Ngày: | Loại File: PDF | Số trang:27

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

Bài giảng Cơ sở dữ liệu quan hệ và SQL: Chương 4 thao tác dữ liệu gồm kiến thức về ngôn ngữ thao tác dữ liệu, cấu lệnh, câu lệnh cập nhật...

Chủ đề:
Lưu

Nội dung Text: Bài giảng Cơ sở dữ liệu quan hệ và SQL: Chương 4 - CĐ CNTT Hữu nghị Việt Hàn

  1. Chương 4 THAO TÁC DỮ LIỆU - Lý thuyết: 4 tiết - Thực hành: 6 tiết Chương 4. Thao tác dữ liệu 4-1
  2. Thao tác dữ liệu 4.1 Ngôn ngữ thao tác dữ liệu  Thêm các hàng mới vào một bảng.  Chỉnh sửa các hàng đã tồn tại trong bảng.  Loại bỏ hàng từ bảng. Chương 4. Thao tác dữ liệu 4-2
  3. Thao tác dữ liệu 4.2 Câu lệnh chèn (INSERT)  Chèn dữ liệu vào bảng. Chương 4. Thao tác dữ liệu 4-3
  4. Thao tác dữ liệu 4.2 Câu lệnh chèn (INSERT)  Chèn một hàng vào bảng INSERT INTO table ([column, column, ...]) VALUES (value, value ...); Ví dụ INSERT INTO Dept VALUES (50, 'MARKETING', null,'SAN JOSE'); Chương 4. Thao tác dữ liệu 4-4
  5. Thao tác dữ liệu 4.2 Câu lệnh chèn (INSERT)  Chép dữ liệu từ bảng khác INSERT INTO table [(column, column...)] SELECT select_list FROM table1;  select_list: Danh sách cột hay biểu thức cần lấy dư˜ liệu Ví dụ INSERT INTO EMP_TMP(Ename, Sal) SELECT Firstname, Salary FROM Emp WHERE Sal > Chương 4. Thao tác dữ liệu 1000; 4-5
  6. Thao tác dữ liệu 4.2 Câu lệnh chèn (INSERT)  INSERT đồng thời trên nhiều bảng  INSERT không điều kiện (UNCONDITIONAL) INSERT ALL INTO T1 (C1, C2, ...) VALUES (V1, V2, ...) INTO T2 (C1, C2, ...) VALUES (V1, V2, ...) [SELECT C1, C2, ... FROM T]; Chương 4. Thao tác dữ liệu 4-6
  7. Thao tác dữ liệu 4.2 Câu lệnh chèn (INSERT)  INSERT đồng thời trên nhiều bảng  INSERT có điều kiện (CONDITIONAL) INSERT [ALL| FIRST] WHEN c1 = 1 THEN INTO T1 (C1, C2, ...) VALUES (V1, V2, ...) WHEN c1 = 2 THEN INTO T2 (C1, C2, ...) VALUES (V1, V2, ...) WHEN c1 = 3 THEN INTO T3 (C1, C2, ...) VALUES (C1, C2, ...) SELECT C1, C2, ... FROM T;  FIRST: thực hiện câu lệnh đầu tiên có điều kiện đúng.  ALL: thực hiện mọi câu lệnh có điều kiện đúng. Chương 4. Thao tác dữ liệu 4-7
  8. Thao tác dữ liệu 4.2 Câu lệnh chèn (INSERT)  Chèn hàng với giá trị NULL  Không tường minh INSERT INTO Dept(Deptid, Deptname) VALUES (30, ‘PURCHASING');  Tường minh INSERT INTO DEPT VALUES (100, ‘FINANCE', NULL, NULL); Chương 4. Thao tác dữ liệu 4-8
  9. Thao tác dữ liệu 4.2 Câu lệnh chèn (INSERT)  Một số lỗi thường gặp  Thiếu giá trị cho cột NOT NULL.  Trùng lặp giá trị vi phạm ràng buộc duy nhất.  Vi phạm ràng buộc khóa ngoại.  Vi phạm ràng buộc CHECK.  Lỗi kiểu dữ liệu.  Giá trị lớn hơn độ rộng cột. Chương 4. Thao tác dữ liệu 4-9
  10. Thao tác dữ liệu 4.3 Câu lệnh cập nhật (UPDATE)  cập nhật dư˜ liệu trong cơ sở dữ liệu Chương 4. Thao tác dữ liệu 4 - 10
  11. Thao tác dữ liệu 4.3 Câu lệnh cập nhật (UPDATE) UPDATE table [alias] SET column [,column...] = [expr, subquery] [WHERE condition] Trong đó expr, subquery: Giá trị được cập nhật vào bảng. Chương 4. Thao tác dữ liệu 4 - 11
  12. Thao tác dữ liệu 4.3 Câu lệnh cập nhật (UPDATE) Ví dụ Cập nhật thông tin cho SCOTT với công việc mới là SALEMAN và tăng lương lên 1.1 lần. UPDATE Emp SET jobid = 'SALEMAN', salary = salary * 1.1 WHERE Firstname = 'SCOTT' Chương 4. Thao tác dữ liệu 4 - 12
  13. Thao tác dữ liệu 4.3 Câu lệnh cập nhật (UPDATE) Ví dụ Cập nhật tiền lương cho nhân viên dựa vào mức lương cao nhất công việc của họ. UPDATE Emp SET salary = (SELECT max_salary FROM Job J WHERE J.jobid = Emp.jobid) Chương 4. Thao tác dữ liệu 4 - 13
  14. Thao tác dữ liệu 4.4 Câu lệnh xóa (DELETE)  xóa hàng đang tồn tại trong cơ sở dữ liệu Chương 4. Thao tác dữ liệu 4 - 14
  15. Thao tác dữ liệu 4.4 Câu lệnh xóa (DELETE)  Xóa dữ liệu trong một bảng DELETE FROM table [WHERE condition]; Ví dụ Xóa tất cả dữ liệu trong bảng EMP. DELETE FROM Emp Xóa tất cả những hàng dữ liệu có Deptid =10. DELETE FROM Emp WHERE Deptid = 10 Chương 4. Thao tác dữ liệu 4 - 15
  16. Thao tác dữ liệu 4.4 Câu lệnh xóa (DELETE)  Xóa dữ liệu dựa trên bảng khác Ví dụ: Xóa tất cả những nhân viên thuộc phòng Public. DELETE FROM Emp WHERE Deptid = (SELECT Deptid FROM Dept WHERE deptName LIKE 'Publi%'); Chương 4. Thao tác dữ liệu 4 - 16
  17. Thao tác dữ liệu 4.5 Câu lệnh kết hợp (MERGE)  cập nhật hoặc chèn tuỳ thuộc vào bản ghi đích. MERGE INTO table AS alias USING (table|view|sub_query) AS alias ON (join condition) WHEN MATCHED THEN UPDATE SET col1 = col1_val, col2 = col2_val WHEN NOT MATCHED THEN INSERT (column_list) VALUES (column_values); Chương 4. Thao tác dữ liệu 4 - 17
  18. Thao tác dữ liệu 4.5 Câu lệnh kết hợp (MERGE) Ví dụ Cập nhật hoặc chèn vào bảng Copyemp, sử dụng Emp MERGE INTO Copy_emp AS c USING Emp e ON (c.empid = e.empid) WHEN MATCHED THEN UPDATE SET c.ename = e.ename, ... c.deptid = e.deptid WHEN NOT MATCHED THEN INSERT VALUES(e.empid, e.ename, e.jobid, e.salary,…, e.managerid, e.deptid); Chương 4. Thao tác dữ liệu 4 - 18
  19. Thao tác dữ liệu 4.6 Điều khiển chuyển tác  là một đơn vị làm việc nguyên tố  bắt đầu khi user kết nối vào cơ sở dữ liệu  kết thúc khi thuộc một trong các trường hợp sau:  COMMIT hoặc ROLLBACK.  Các lệnh DDL và DCL thực hiện (tự động commit).  Lỗi, thoát khỏi SQL*Plus, hệ thống bị down. Chương 4. Thao tác dữ liệu 4 - 19
  20. Thao tác dữ liệu 4.6 Điều khiển chuyển tác Chương 4. Thao tác dữ liệu 4 - 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

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