TIL | MYSQL 구조, 데이터 복사 주의점

sik2·2021년 4월 28일
3

DB

목록 보기
1/1

WHAT

  • 테이블에 데이터를 삭제해야함
  • 삭제 데이터를 롤백 시켜야할 가능성이 있음
  • 롤백해야 한다면 테이블을 날리고 백업테이블을 원본 테이블로 바꿔치기 할 예정

HOW TO

데이터를 복사하는 방법 2가지

  1. 구조와 데이터 복사 후 설정 추가
	CREATE TABLE 새로운테이블 (SELECT * FROM 기존테이블)
  • 테이블과 데이터가 함께 복사된다.
  • PK(primary key)와 auto_increment 설정은 복사되지 않음
	ALTER 테이블명 MODIFY id int(11) NOT NULL AUTO_INCREMENT PRIMARY KEY
  • PK 값과 auto_incerment를 추가해주자.
  1. 구조 복사 후 데이터 복사

구조복사

	CREATE TABLE [IF NOT EXISTS] 새로운테이블 LIKE 기존테이블
  • 테이블의 구조만 복사된다.
  • PK 나 auto_increment 구조도 함께 복사된다.

데이터 복사

	INSERT INTO 데이터삽입테이블 (SELECT * FROM 복사테이블)
  • 데이터만 복사되어 삽입된다
  • PK 가 있을 경우 중복된 값이 존재하면 오류가 발생한다.

주의점

  • PK auto_increment 설정에 주의해서 두가지 방법중 하나를 선택해서 사용하자.
profile
문제해결을 즐기는 개발자

관심 있을 만한 포스트

0개의 댓글