Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL RENAME TABLE 명령어로 테이블 이름 변경하는 방법

MySQL에서 테이블 이름 변경하기

MySQL에서 기존 테이블의 이름을 변경하려면 RENAME TABLE 명령어를 사용하면 됩니다. 데이터는 그대로 유지된 채 테이블 이름만 바뀌기 때문에 매우 안전하고 빠른 방법입니다.

기본 문법

RENAME TABLE 이전_테이블명 TO 새_테이블명;

1단계: 예제 테이블 생성

먼저 실습에 사용할 테이블을 생성해 보겠습니다.

mysql> create table DemoTable1
(
    Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    UserName varchar(100),
    UserAge int,
    UserCountryName varchar(100)
);
Query OK, 0 rows affected (1.29 sec)

2단계: 테이블 구조 확인

DESC 명령어를 사용해 생성된 테이블의 구조를 확인합니다.

mysql> desc DemoTable1;

위 쿼리를 실행하면 다음과 같은 결과가 출력됩니다.

+-----------------+--------------+------+-----+---------+----------------+
| Field           | Type         | Null | Key | Default | Extra          |
+-----------------+--------------+------+-----+---------+----------------+
| Id              | int(11)      | NO   | PRI | NULL    | auto_increment |
| UserName        | varchar(100) | YES  |     | NULL    |                |
| UserAge         | int(11)      | YES  |     | NULL    |                |
| UserCountryName | varchar(100) | YES  |     | NULL    |                |
+-----------------+--------------+------+-----+---------+----------------+
4 rows in set (0.20 sec)

3단계: RENAME TABLE로 테이블 이름 변경

이제 RENAME TABLE 명령어를 사용해 DemoTable1의 이름을 DemoTable2로 변경해 보겠습니다.

mysql> rename table DemoTable1 to DemoTable2;
Query OK, 0 rows affected (1.22 sec)

4단계: 변경 결과 확인

이름이 정상적으로 변경되었는지 새 테이블의 구조를 다시 한번 확인합니다.

mysql> desc DemoTable2;

실행 결과는 다음과 같습니다.

+-----------------+--------------+------+-----+---------+----------------+
| Field           | Type         | Null | Key | Default | Extra          |
+-----------------+--------------+------+-----+---------+----------------+
| Id              | int(11)      | NO   | PRI | NULL    | auto_increment |
| UserName        | varchar(100) | YES  |     | NULL    |                |
| UserAge         | int(11)      | YES  |     | NULL    |                |
| UserCountryName | varchar(100) | YES  |     | NULL    |                |
+-----------------+--------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)

컬럼 구조와 데이터가 모두 그대로 유지된 것을 확인할 수 있습니다.

알아두면 좋은 추가 정보

  • 여러 테이블 동시 변경: RENAME TABLE 명령어 하나로 여러 테이블의 이름을 한 번에 변경할 수 있습니다. 예: RENAME TABLE t1 TO t2, t3 TO t4;
  • 대체 방법: ALTER TABLE 이전_테이블명 RENAME TO 새_테이블명; 구문으로도 동일한 작업이 가능합니다.
  • 주의 사항: 테이블 이름을 변경하기 위해서는 해당 테이블에 대한 ALTERDROP 권한이 필요합니다. 또한 이름 변경 후 해당 테이블을 참조하던 뷰(View), 저장 프로시저(Stored Procedure), 외래 키(Foreign Key) 등은 자동으로 갱신되지 않으므로 반드시 확인해야 합니다.