반응형
MSSQL을 사용하다 보면 기존 테이블의 이름을 변경해야 할 때가 있습니다. 테이블 이름 변경은 간단한 SQL 명령어 또는 GUI를 활용하여 수행할 수 있습니다. 이번 포스팅에서는 SQL 명령어와 SSMS(Management Studio)를 활용한 테이블 이름 변경 방법을 자세히 설명하겠습니다.
1. sp_rename을 사용하여 테이블 이름 변경하기 (SQL 명령어)
MSSQL에서는 sp_rename 시스템 저장 프로시저를 사용하여 테이블 이름을 변경할 수 있습니다.
사용법:
EXEC sp_rename '기존_테이블_이름', '새로운_테이블_이름';
예제:
기존 테이블 Customers의 이름을 ClientData로 변경하려면 다음과 같이 실행합니다.
EXEC sp_rename 'Customers', 'ClientData';
⚠️ 주의:
- sp_rename을 사용할 때는 스키마 이름을 포함하지 않습니다. (dbo.Customers 대신 Customers 입력)
- 기본 키, 외래 키 제약 조건은 유지되지만, 테이블명 변경 후 뷰(View), 저장 프로시저(Stored Procedure), 트리거(Trigger) 등에서 테이블 이름이 사용되었는지 확인해야 합니다.
2. SSMS (SQL Server Management Studio)에서 테이블 이름 변경하기 (GUI)
MSSQL에서 제공하는 SSMS GUI를 사용하여 테이블 이름을 변경하는 방법도 있습니다.
변경 방법:
- SSMS 실행 후 데이터베이스 연결
- 변경할 테이블이 포함된 데이터베이스 선택
- [데이터베이스] → [테이블] 목록에서 변경할 테이블 선택
- 테이블을 마우스 오른쪽 버튼 클릭 → [이름 변경] 선택
- 새로운 이름 입력 후 Enter 키 누르기
⚠️ 주의:
- SSMS에서 직접 테이블 이름을 변경하면, 내부적으로 sp_rename 명령어가 실행됩니다.
- 만약 기존 테이블 이름이 다른 객체(뷰, 트리거, 저장 프로시저 등)에서 참조된다면 변경 후 오류가 발생할 수 있습니다.
3. 테이블 이름 변경 후 영향도 확인하기
테이블 이름을 변경하면, 기존에 해당 테이블을 참조하는 객체에 영향을 줄 수 있습니다. 다음 쿼리를 실행하여 테이블이 사용된 곳을 찾을 수 있습니다.
저장 프로시저, 뷰, 트리거에서 참조 여부 확인:
SELECT OBJECT_NAME(object_id), definition
FROM sys.sql_modules
WHERE definition LIKE '%기존_테이블_이름%';
외래 키(Foreign Key) 제약 조건 확인:
SELECT name, object_id, referenced_object_id
FROM sys.foreign_keys
WHERE referenced_object_id = OBJECT_ID('기존_테이블_이름');
4. 테이블 이름 변경 후의 추가 작업
테이블 이름을 변경한 후에는 다음 작업을 고려해야 합니다:
- 뷰(View), 저장 프로시저(Stored Procedure), 트리거(Trigger) 업데이트
- 어플리케이션 소스 코드에서 테이블 이름 사용 여부 확인
- 백업 및 테스트 실행
✅ 정리
방법명령어 또는 절차
SQL 명령어 사용 | EXEC sp_rename '기존_테이블_이름', '새로운_테이블_이름'; |
SSMS GUI 사용 | 테이블 우클릭 → [이름 변경] 선택 |
영향도 분석 | sys.sql_modules, sys.foreign_keys 조회 |
이제 MSSQL에서 테이블 이름을 안전하게 변경할 수 있습니다! 테이블 이름을 변경한 후에는 반드시 뷰(View), 저장 프로시저, 트리거 등에서 참조하는 곳이 있는지 확인하세요.
더 궁금한 점이 있다면 댓글로 남겨주세요! 😊
반응형
'DB 기본 개념 다지기' 카테고리의 다른 글
MSSQL에서 테이블 삭제하는 방법 (0) | 2025.02.21 |
---|---|
MSSQL 종속성 보기 방법 (Dependency View) (0) | 2025.02.21 |
MSSQL ALTER TABLE 열 추가 ADD/삭제 DROP COLUMN/변경 ALTER COLUMN (0) | 2024.02.07 |
MSSQL 테이블 만들기 CREATE TABLE (0) | 2024.02.07 |
데이터베이스 관리 - 중요 옵션, 파일 크기 증가/축소, DB 분리와 연결 (1) | 2023.07.05 |