Database/SQL

테이블 복사 / 레코드 복사

NiceKHJ 2024. 7. 8. 17:53

테이블 복사

테이블 복사는 이미 생성된 테이블의 구조나 레코드와 열을 선택적으로 복사할 수 있는 기능

 

테이블 복사 장점 

  • 기존 테이블의 구조와 데이터를 한 번에 복제할 수 있어 효율적이다.
  • 원하는 열만 선택하여 데이터를 복사할 수 있다.

테이블 복사 주의사항

  • 테이블 내의 인덱스 , 기본 키 , 외래 키 등의 제약 조건은 복사되지 않는다.
  • 대량의 데이터를 복사할 경우 성능 이슈가 발생할 수 있다.

 

테이블 복사 방법

create table 테이블명 as 복사할테이블내용 

 

- emp테이블의 모든컬럼과 모든 레코드 복사하기

     CREATE TABLE c_emp AS SELECT * FROM EMP;

 

- emp테이블의 특정컬럼을 복사하기(컬럼명이름 변경포함)

    CREATE TABLE c_emp2 AS

        SELECT empno 번호, ename 이름, job 직업,sal 급여 FROM EMP;

 

- emp테이블의 특정레코드만 복사하기(조건사용)

    CREATE TABLE c_emp3 AS SELECT * FROM EMP WHERE deptno=20;

 

- emp테이블의 테이블의 구조만 복사하기(조건을 항상 불만족표현)

   CREATE TABLE c_emp4 AS SELECT * FROM EMP WHERE 1=0

 

테이블 복사 예시

create table new_emp as select * from emp where dept = 60;

 

##################################################################################

레코드 복사

레코드 복사는 한 테이블의 특정 레코드나 조건에 맞는 레코드를 다른 테이블로 복사하는 과정 입니다.

이는 데이터를 세밀하게 조정하거나 필요한 데이터만을 추출하여 다른 테이블에 삽입할 때 유용 합니다.

 

레코드 복사 장점

  • 원본 테이블의 일부 데이터만을 선택적으로 다른 테이블로 이동할 수 있다.
  • 원본 테이블의 구조를 유지하면서 데이터를 추가할 수 있다.

 

레코드 복사 주의사항

  • 데이터 무결성을 유지하기 위해 반드시 유효성 검사를 수행해야 한다.
  • 복사된 데이터가 대상 테이블의 제약 조건을 충족하는지 확인해야 한다.

레코드 복사 방법

insert into 새테이블이름(컬럼1,컬럼2,...)

    select 컬럼1,컬럼2,... from 원본테이블이름

        where 조건절;

 

레코드 복사 예시

insert into c_emp6 select emp_type , pay , birthday from emp2;

'Database > SQL' 카테고리의 다른 글

transaction(트랜잭션)  (0) 2024.07.09
Sequence  (0) 2024.07.09
rownum  (0) 2024.07.08
뷰 ( View )  (0) 2024.07.08
서브쿼리( Subquery )  (0) 2024.07.08