SQL 쿼리를 사용하여 테이블 이름을 변경하는 방법은 무엇입니까?


117

쿼리 문을 사용하여 테이블 이름을 어떻게 변경할 수 있습니까?

다음 구문을 사용했지만 SQL Server 2005에서 rename 키워드를 찾을 수 없습니다.

Alter table Stu_Table rename to Stu_Table_10

ALTER TABLE TABLE_NAME RENAME TO NEW_TABLE_NAME은 Oracle DB에서만 작동합니다.
renu

답변:


221

sp_rename 사용 :

EXEC sp_rename 'Stu_Table', 'Stu_Table_10'

이 절차에 대한 설명서는 MSDN 에서 찾을 수 있습니다 .

스키마 이름을 포함해야하는 경우 첫 번째 매개 변수에만 포함될 수 있습니다 (즉, 한 스키마에서 다른 스키마로 테이블을 이동하는 데 사용할 수 없음). 예를 들어 이것은 유효합니다.

EXEC sp_rename 'myschema.Stu_Table', 'Stu_Table_10'

9
sp_rename의 경우 스키마 이름을 사용할 수있는 첫 번째 매개 변수 일 뿐이며 두 번째 인수에는 스키마 이름이 없어야합니다. EXEC sp_rename 'dbo.Stu_Table', 'Stu_Table_10'에서처럼
Henrik

1
Henrik의 의견은 매우 중요합니다. 이것이 아마도 대답의 일부가되어야합니까? 두통에서 나를 구했습니다.
CincinnatiProgrammer

65

에서 MySQL:-

RENAME TABLE `Stu Table` TO `Stu Table_10`

8
질문은 SQL Server에 관한 것이며 귀하의 대답은 MySQL에 대한 것입니다.
Sam

7
MySQL과 잘 작동했습니다.

11
이 질문은 mysql에 대해서도 Google에서 참조되기 때문에 투표했습니다.
Paul Fournel 2014 년

4
Mysql로 ​​나를 위해 일했습니다
Ranganatha GV

2
Google이 나를 여기로 가져 왔을 때 mysql 대답에 +1. OP가 그들에게 효과가 있었던 답을 틱조차도 기억하십시오. 다른 사람들은 나처럼 유용한 대안을 찾을 수 있습니다.
amonett

15

SQL Server 2005에서 이것을 사용하십시오.

sp_rename old_table_name , new_table_name

그것은 당신에게 줄 것입니다 :

주의 : 개체 이름의 일부를 변경하면 스크립트와 저장 프로 시저가 손상 될 수 있습니다.

그러나 테이블 이름이 변경됩니다.


14

Postgress SQL에서 :

Alter table student rename to student_details;


2

ALTER TABLE table_name RENAME TO new_table_name; MySQL에서도 작동합니다.

MySQL 서버에서 실행되는이 쿼리의 스크린 샷

또는 : RENAME TABLE table_nameTO new_table_name; MySQL 서버에서 실행되는이 쿼리의 스크린 샷


1

최신 MySQL 버전 용 Syntex가 변경되었습니다.

따라서 테이블 이름에 SINGLE QUOTES없이 RENAME 명령 시도하십시오 .

RENAME TABLE old_name_of_table TO new_name_of_table;




-2

테이블 이름 변경 :

RENAME TABLE old_tableName TO new_tableName;

예를 들면 :

RENAME TABLE company_name TO company_master;

이것이 설명 된 SQL Server 2005 설명서를 가리킬 수 있습니까?
파비안 Fagerholm
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.