때로는 테이블 이름이 의미가 없어 테이블 이름을 바꾸거나 변경해야 하는 경우가 있습니다. MySQL은 현재 데이터베이스에서 하나 이상의 테이블 이름을 바꿀 수 있는 유용한 구문을 제공합니다.
통사론
다음은 테이블 이름을 변경하는 데 사용되는 구문입니다.
mysql> RENAME old_table TO new_table;
여기서 우리는 다음 사항을 확인해야 합니다. new_table_name 존재하지 않아야 하며, 이전_테이블_이름 데이터베이스에 존재해야 합니다. 그렇지 않으면 오류 메시지가 표시됩니다. 이 명령문을 실행하기 전에 테이블이 잠겨 있지 않고 활성 트랜잭션이 없는지 확인하는 것입니다.
참고: RENAME TABLE 문을 사용하는 경우 기존 테이블에 대한 ALTER 및 DROP TABLE 권한이 필요합니다. 또한 이 명령문은 임시 테이블의 이름을 변경할 수 없습니다.
MySQL을 사용할 수도 있습니다. 테이블 이름 바꾸기 아래와 같이 단일 명령문으로 둘 이상의 테이블 이름을 변경하는 명령문:
RENAME TABLE old_tab1 TO new_tab1, old_tab2 TO new_tab2, old_tab3 TO new_tab3;
로부터 MySQL 8.0.13 버전에서는 LOCK 문으로 잠긴 이전 테이블 이름을 변경할 수 있으며 WRITE LOCK 절도 사용합니다. 예를 들어, 유효한 문은 다음과 같습니다.
mysql> LOCK TABLE old_tab_name1 WRITE; RENAME TABLE old_tab_name1 TO new_tab_name1, new_tab_name1 TO new_tab_name2;
다음 진술은 허용되지 않습니다.
mysql> LOCK TABLE old_tab_name1 READ; RENAME TABLE old_tab_name1 TO new_tab_name1, new_tab_name1 TO new_tab_name2;
MySQL 8.0.13 버전 이전에는 LOCK TABLE 문으로 Lock된 테이블 이름을 변경할 수 없습니다.
MySQL은 또한 아래에 표시된 것처럼 한 데이터베이스에서 다른 데이터베이스로 테이블을 이동하기 위해 RENAME TABLE 문을 사용합니다.
mysql> RENAME TABLE current_db.tablel_name TO other_db.tablel_name;
MySQL 이름 바꾸기 테이블 예
다양한 예제를 통해 MySQL에서 RENAME TABLE 문이 어떻게 작동하는지 살펴보겠습니다. 라는 이름의 테이블이 있다고 가정해 보겠습니다. 직원 , 그리고 어떤 이유로 인해 이름이 지정된 테이블로 변경해야 합니다. 고객 .
테이블 이름: 직원
그런 다음, 다음 구문을 실행하여 테이블 이름을 변경합니다.
mysql> RENAME employee TO customer;
산출
문자열 자바로 나누기
'employee'라는 테이블이 'customer'라는 새 테이블 이름으로 변경되는 것을 볼 수 있습니다.
위 출력에서 RENAME TABLE 문을 실행한 후 테이블 이름 직원을 사용하면 오류 메시지가 발생하는 것을 볼 수 있습니다.
여러 테이블의 이름을 바꾸는 방법
MySQL의 RENAME TABLE 문을 사용하면 단일 문 내에서 둘 이상의 테이블 이름을 변경할 수도 있습니다. 아래 설명을 참조하세요.
우리 데이터베이스 ' myemployeedb '에는 다음과 같은 테이블이 있습니다.
테이블 이름 고객을 직원으로, 테이블 이름 셔츠를 의류로 변경하려면 다음 명령문을 실행하십시오.
mysql> RENAME TABLE customer TO employee, shirts TO garments;
산출
테이블 이름 고객이 직원으로, 테이블 이름 셔츠가 의류로 성공적으로 이름이 변경된 것을 볼 수 있습니다.
ALTER 문을 사용하여 테이블 이름 바꾸기
ALTER TABLE 문을 사용하여 현재 데이터베이스에 있는 기존 테이블의 이름을 바꿀 수도 있습니다. ALTER TABLE 문의 구문은 다음과 같습니다.
ALTER TABLE old_table_name RENAME TO new_table_name;
기존 테이블 이름 의류를 새 테이블 이름 셔츠로 변경하는 다음 쿼리를 참조하세요.
유튜브 비디오 vlc 다운로드
mysql> ALTER TABLE garments RENAME TO shirts:
산출
여기서는 테이블 이름 의류가 테이블 이름 셔츠로 이름이 변경된 것을 볼 수 있습니다.
임시 테이블 이름을 바꾸는 방법
임시 테이블을 사용하면 현재 세션에서만 볼 수 있고 액세스할 수 있는 임시 데이터를 유지할 수 있습니다. 따라서 먼저 다음 명령문을 사용하여 임시 테이블을 생성해야 합니다.
mysql> CREATE TEMPORARY TABLE Students( name VARCHAR(40) NOT NULL, total_marks DECIMAL(12,2) NOT NULL DEFAULT 0.00, total_subjects INT UNSIGNED NOT NULL DEFAULT 0);
다음으로 이 테이블에 값을 삽입합니다.
mysql> INSERT INTO Students(name, total_marks, total_subjects) VALUES ('Joseph', 150.75, 2), ('Peter', 180.75, 2);
그런 다음 show table 명령을 실행하여 임시 테이블을 확인합니다.
mysql> SELECT * FROM Students;
이제 다음 명령을 실행하여 임시 테이블의 이름을 변경합니다.
mysql> RENAME TABLE Students TO student_info;
아래와 같이 오류 메시지가 표시됩니다.
따라서 MySQL은 ALTER 테이블 문이 임시 테이블의 이름을 바꾸는 것을 허용합니다.
mysql> ALTER TABLE Students RENAME TO student_info;
산출