1. 상관서브쿼리(== 서브상관쿼리)를 사용한 UPDATE 처리하기
create table tbl_employees_backup_20240223_1135
as
select *
from employees;
select *
from tbl_employees_backup_20240223_1135;
2. 상관서브쿼리(서브상관쿼리)를 사용한 UPDATE 처리하기
update employees set first_name = '순신', last_name = '이';
commit;
select * from employees;
update employees E set first_name = ( select first_name
from tbl_employees_backup_20240223_1135
where employee_id = E.employee_id )
, last_name = ( select last_name
from tbl_employees_backup_20240223_1135
where employee_id = E.employee_id );
select *
from employees;
commit;
3. 상관서브쿼리(서브상관쿼리)를 사용한 insert 처리
create database link teacher_oracle_server
connect to hr identified by gclass -- 이때 hr 과 암호 gclass 는 연결하고자 하는 원격지 오라클서버(192.168.0.220)의 계정명과 암호이다. (내 암호 아님!!)
using 'TEACHER'; -- TEACHER 은 Net Service Name 네트서비스네임(넷서비스명) 이다.
SELECT *
FROM employees@teacher_oracle_server ; -- 원격지 오라클 서버
select * from employees;
insert into employees(employee_id, first_name, last_name, email, phone_number, hire_date, job_id, salary, commission_pct, manager_id, department_id, jubun) -- 테이블 컬럼명을 넣어주면 맞게 넣어준다. 차례대로!!
select employee_id, first_name, last_name, email, phone_number, hire_date, job_id, salary, commission_pct, manager_id, department_id, jubun
from employees@teacher_oracle_server O
where O.employee_id = 178;