BÀI THƯ
̣
C HÀNH SỐ 8
(Thao tác trên dư
̃
liệu)
1. Thêm vào 1 dòng dư
̃
liệu cho bảng departments_cp vơ
́
i giá trị của các cột theo thư
́
tư
̣
như
sau: 79, ‘Finanace’,110,1600. Sau đó dùng câu lệnh truy vấn dư
̃
liệu xem đã thêm vào
thành công chưa. (Bảng departments_cp có cấu trúc tương tư
̣
như bảng departments).
INSERT INTO DEPARTMENTS_CP
Values (100, 'Finanace', 110, 1600);
2. Thêm dư
̃
liệu vào bảng departments_cp cho cột department_id = 81, department_name =
‘Administration’ và cột còn lại cho giá trị NULL.
INSERT INTO DEPARTMENTS_CP(department_id, department_name)
Values (90, 'Administration' );
3. Thêm vào một dòng dư
̃
liệu cho bảng departments_cp vơ
́
i yêu cầu ngươ
̀
i sư
̉
dụng nhập
vào dư
̃
liệu cho tư
̀
ng cột.
INSERT INTO DEPARTMENTS_CP(department_id, department_name,
manager_id, location_id)
Values(&department_id,’&department_name’, &manager_id,&location_id) ;
INSERT INTO DEPARTMENTS_CP(department_id, department_name,
manager_id, location_id)
Values (&department_id,’&department_name’, &manager_id,&location_id) ;
4. Viết một câu lệnh thêm dư
̃
liệu vào bảng departments_cp nhưng không dùng VALUES,
thay vào đó ta dùng Subquery đê
̉
lấy dư
̃
liệu tư
̀
bảng departments (sinh viên tư
̣
cho điê
̀
u
kiện).
INSERT INTO DEPARTMENTS_CP
SELECT department_id,department_name,manager_id,location_id FROM departments
Where department_id=170;
5. Cập nhật tiền hoa hồng 10 % cho tất cả nhân viên có department_id là 1600.
UPDATE EMPLOYEES
SET COMMISSION_PCT=COMMISSION_pct*0.1
WHERE DEPARTMENT_ID=170;
6. Cập nhật department_id, salary của bảng employees vơ
́
i điê
̀
u kiện employee_id của nhân
viên là 205 và các yêu cầu sau:
- Department_id đươ
̣
c lấy tư
̀
Department_id có employee_id là 32
- Salary đươ
̣
c lấy tư
̀
salary có employee_id là 32
Update employees
Set department_id = (select department_id
From employees
Where employee_id = 111) ,
Salary = (select salary
From employees
Where employee_id = 112)
Where employee_id = 205;
7. Xóa đi tất cả thông tin của nhân viên có ngày bắt đầu vào làm việc là trong tháng 1 năm
1998 trong bang Employees_cp..
DELETE FROM EMPLOYEES_CP
WHERE TO_DATE(HIRE_DATE ,’MM/YYYY’) = ‘01/1998’;
8. Xóa đi thông tin của departments_cp có location_id = 1600.
DELETE FROM departments_cp
WHERE location_id = 1600;
9. Thư
̣
c hành ví dụ trong sách câu lệnh MERGE vơ
́
i yêu cầu trươ
́
c khi làm:
- Truy vấn xem thông tin của bảng employees_cp
- Sau đó xóa toàn bộ dư
̃
liệu của bảng employees_cp
- Truy vấn xem lại thông tin của bảng employees_cp
- Thư
̣
c hiện cậu lệnh MERGE trong ví dụ
- Kiểm tra lại kết quả của bảng employees_cp sau khi MERGE có giống kết quả
ban đầu không.
10. Thư
̣
c hành các câu lệnh commit, rollback, savepoint của các ví dụ trong sách.