배워서 남주자/Data Base

[MySQL] 테이블 구조 복사 및 데이터 복사 ( Table Copy )

메그넘 2019. 9. 29. 21:53

* [ 구조 복사 ]

Create Table new_table like old_table 

  특징 : 기존 테이블의 설정 그대로 복사 된다.

    참고 => 기존 테이블에 'Primary Key' 또는 'auto_increment' 가 설정 되어 있으면 복사 할 수 없음.
    응용 => Create Table IF NOT EXISTS new_table like old_table (new_table 이 없으면 복사)

 


* [ 구조와 데이터 복사 ]

Create Table new_table ( select * from old_table )

  특징 : 테이블의 구조와 함께 데이터도 함께 복사가 된다.

     주의 => 기존 테이블에 'Primary Key' 또는 'auto_increment' 가 설정 되어 있으면 해당 설정은 적용 되지 않고

                 값만 복사 됨.

 

* [ 데이터 복사 ]

Insert Into destination_table ( select * form source_table

  참고 ==> 대상 테이블의 컬럼 중에 자동 증가 값 설정 이 된 컬럼이 있을 경우 해당 컬럼에 데이터 입력시 중복된

                데이터가 있으면 오류 발생.
  응용 ==> Insert Into destination_table (column_a, column_b) (select a, b from source_table) 원하는 필드의

                데이터만 복사가 가능하다.