English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
이 튜토리얼에서는 기존 테이블의 복제를 만드는 방법을 배웁니다.
때로는 원본 테이블에 영향을 미치지 않고 테스트나 특정 작업을 수행하기 위해 기존 테이블의 정확한 복사본이나克隆을 만들고 싶을 수 있습니다.
다음 장에서는 이 작업을 수행하는 방법을 몇 가지 간단한 단계로 설명합니다.
먼저 다음과 같은 문장을 사용하여 원본 테이블 정의에 따라 빈 테이블을 생성합니다. 이는 원본 테이블에서 정의된 열 속성과 인덱스를 포함합니다:
CREATE TABLE new_table LIKE original_table;
지금, 다음과 같은 문장을 사용하여 빈 테이블에 원본 테이블의 데이터를 입력하십시오:
INSERT INTO new_table SELECT * FROM original_table;
MySQL 명령행 도구를 사용하여 테이블을 복제해 보겠습니다.
우리를 고려해 주세요employees의 데이터베이스에 다음과 같은 레코드를 포함한 테이블이 있습니다:
+--------+--------------+------------+--------+---------+ | emp_id | emp_name | hire_date | salary | dept_id | +--------+--------------+------------+--------+---------+ | 1 | Ethan Hunt | 2001-05-01 | 5000 | 4 | | 2 | Tony Montana | 2002-07-15 | 6500 | 1 | | 3 | Sarah Connor | 2005-10-18 | 8000 | 5 | | 4 | Rick Deckard | 2007-01-03 | 7200 | 3 | | 5 | Martin Blank | 2008-06-24 | 5600 | NULL | +--------+--------------+------------+--------+---------+
다음과 같은 SQL 문장을 실행해 주세요. 이 문장은 기존employees데이터베이스 테이블 정의: 빈 테이블 생성employees_clone。
employees_clone employees;
지금, 다른 SQL 문장을 실행해 주세요. 이 문장은 employee 테이블에서 모든 레코드를 employees_clone 테이블에 삽입합니다. 이 문장을 실행한 후, employee_clone 테이블을 얻게 됩니다. 이 테이블은 employee 테이블의 정확한 복사본 또는 복제본입니다.
employees_clone * employees;
만약 다른 테이블에서 모든 열 속성과 인덱스를 고려하지 않고 테이블을 생성하고 싶다면, 간단한 한 줄 명령어를 사용할 수 있습니다:
CREATE TABLE new_table SELECT * FROM original_table;
다음 명령어가 생성됩니다employees테이블의 간단한 복사본.
employees_dummy * employees;
ヒント:CREATE TABLE ... SELECT 문법을 사용하여 단순히 원본 테이블의 구조와 데이터를 포함한 모든 테이블의 간단한 복사본을 빠르게 생성할 수 있습니다。