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

bài giảng cơ sở dữ liệu quan hệ và sql chương 4: thao tác dữ liệu - cđ cntt hữu nghị việt hàn

27 696 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 27
Dung lượng 389,12 KB

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

Nội dung

4.2 Câu lệnh chèn INSERTINSERT 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_TMPEname,

Trang 1

Chương 4 THAO TÁC DỮ LIỆU

- Lý thuyết: 4 tiết

- Thực hành: 6 tiết

Trang 2

4.1 Ngôn ngữ thao tác dữ liệu

Thao tác dữ liệu

Trang 3

4.2 Câu lệnh chèn (INSERT)

Thao tác dữ liệu

Trang 4

4.2 Câu lệnh chèn (INSERT)

INSERT INTO table ([column, column, ])

VALUES (value, value );

Ví dụ

INSERT INTO DeptVALUES (50, 'MARKETING', null,'SAN JOSE');

Thao tác dữ liệu

Trang 5

4.2 Câu lệnh chèn (INSERT)

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

Thao tác dữ liệu

Trang 6

4.2 Câu lệnh chèn (INSERT)

 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];

Thao tác dữ liệu

Trang 7

4.2 Câu lệnh chèn (INSERT)

 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

Thao tác dữ liệu

Trang 8

4.2 Câu lệnh chèn (INSERT)

 Không tường minh

INSERT INTO Dept(Deptid, Deptname)VALUES (30, ‘PURCHASING');

 Tường minh

INSERT INTO DEPT VALUES (100, ‘FINANCE', NULL, NULL);

Thao tác dữ liệu

Trang 9

4.2 Câu lệnh chèn (INSERT)

 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

Thao tác dữ liệu

Trang 10

4.3 Câu lệnh cập nhật (UPDATE)

Thao tác dữ liệu

Trang 11

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

Thao tác dữ liệu

Trang 12

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'

Thao tác dữ liệu

Trang 13

FROM Job J WHERE J.jobid = Emp.jobid)

Thao tác dữ liệu

Trang 14

4.4 Câu lệnh xóa (DELETE)

Thao tác dữ liệu

Trang 15

4.4 Câu lệnh xóa (DELETE)

DELETE FROM table

[WHERE condition];

DELETE FROM EmpXóa tất cả những hàng dữ liệu có Deptid =10

DELETE FROM Emp WHERE Deptid = 10

Thao tác dữ liệu

Trang 16

4.4 Câu lệnh xóa (DELETE)

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

Thao tác dữ liệu

Trang 17

4.5 Câu lệnh kết hợp (MERGE)

Thao tác dữ liệu

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);

Trang 18

UPDATE SET

c.ename = e.ename,

c.deptid = e.deptid

Trang 19

4.6 Điều khiển chuyển tác

 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

Thao tác dữ liệu

Trang 20

4.6 Điều khiển chuyển tác

Thao tác dữ liệu

Trang 21

4.6 Điều khiển chuyển tác

Trang 22

4.6 Điều khiển chuyển tác

ROLLBACK [TO SAVEPOINT name]

 quay lại điểm SAVEPOINT hoặc toàn bộ chuyển tác

SET AUTO[COMMIT] ON/OFF

 lưu điểm bắt đầu chuyển tác

Thao tác dữ liệu

Trang 23

4.6 Điều khiển chuyển tác

Ví dụ

INSERT INTO Dept

VALUES (50,’TESTING’,’LAS VEGAS’);

SAVEPOINT INSERT_DONE;

DELETE FROM Dept

where DNAME = ’TESTING’;

ROLLBACK TO INSERT_DONE ;

COMMIT;

Thao tác dữ liệu

Trang 24

4.6 Điều khiển chuyển tác

 có thể phục hồi dữ liệu

 có thể xem trước kết quả

 người dùng không phải hiện hành sẽ không xem được kết quả

 các hàng giả lập bị khóa

Thao tác dữ liệu

Trang 25

4.6 Điều khiển chuyển tác

 Dữ liệu bị cố định

 Tất cả người dùng có thể xem được kết quả

 Mở khóa của các hàng giả lập; có thể thao tác được

 Tất cả các SavePoint bị xóa bỏ

Thao tác dữ liệu

Trang 26

4.6 Điều khiển chuyển tác

 Mọi sự thay đổi dữ liệu sẽ không được thực hiện

 Tình trạng dữ liệu trước đó được phục hồi

 Tình trạng khóa của các hàng giả lập được xóa bỏ

Thao tác dữ liệu

Trang 27

Câu hỏi và bài tập

phần bài tập

Câu lệnh SQL

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

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