다음을 통해 공유


뷰 이름 바꾸기

적용 대상: SQL Server Azure SQL 데이터베이스 지원되지 않습니다. Azure Synapse Analytics Analytics Platform System(PDW)

SQL Server Management Studio 또는 Transact-SQL를 사용하여 SQL Server에서 테이블 열의 이름을 바꿀 수 있습니다.

Warning

뷰의 이름을 바꾸면 뷰에 의존하는 코드 및 애플리케이션이 실패할 수 있습니다. 여기에는 뷰, 쿼리, 저장 프로시저, 사용자 정의 함수, 클라이언트 애플리케이션 등이 포함됩니다. 이러한 문제는 연쇄적인 파급 효과를 가져올 수 있습니다.

필수 조건

  1. 뷰에 대한 모든 종속성 목록을 가져옵니다. 뷰를 참조하는 모든 개체, 스크립트 또는 애플리케이션은 뷰의 새 이름을 반영하도록 수정해야 합니다. 자세한 내용은 뷰에 대한 정보 가져오기를 참조하세요.
  2. 뷰 이름을 바꾸는 것보다 뷰를 삭제하고 새로운 이름으로 다시 만드는 것이 좋습니다. 뷰를 다시 만들면 뷰에 참조된 개체에 대한 종속성 정보가 업데이트됩니다.
    1. 뷰를 삭제하고 다시 만들면 뷰에 할당된 세분화된 SQL 권한이 제거됩니다. 뷰에 세분화된 SQL 권한이 할당된 경우 뷰를 다시 만든 후에 뷰에 대한 권한을 다시 부여해야 합니다. 개체를 삭제하기 전에 개체에 부여된 세분화된 권한을 검색하려면 sys.database_permissions(Transact-SQL)의 예시를 참조하세요. 사용 권한을 부여하려면 보안 주체에게 사용 권한 부여를 참조하세요.

사용 권한

SCHEMA에는 ALTER 권한, OBJECT에는 CONTROL 권한이 필요하며, 데이터베이스에서는 CREATE VIEW 권한이 필요합니다.

SQL Server Management Studio 사용

뷰 이름 바꾸기

  1. 개체 탐색기에서 이름을 바꿀 뷰가 포함된 데이터베이스를 확장한 다음 폴더를 확장합니다.

  2. 이름을 바꿀 뷰를 마우스 오른쪽 단추로 클릭하고 이름 바꾸기를 선택합니다.

  3. 뷰의 새 이름을 입력합니다.

Transact-SQL 사용

sp_rename을 사용하여 뷰 이름을 변경할 수도 있지만 기존 뷰를 삭제하고 새 이름으로 뷰를 다시 만드는 것이 좋습니다.

sp_rename을 사용하여 저장 프로시저, 함수, 뷰 또는 트리거 이름을 바꿔도 sys.sql_modules 카탈로그 뷰의 정의 열에 있는 해당 개체 이름은 변경되지 않습니다. 이 경우 향후 혼란이 발생할 수 있습니다. 따라서 개체 이름을 바꾸는 데는 sp_rename을 사용하지 않는 것이 좋습니다. 대신 해당 개체를 삭제하고 새 이름으로 개체를 다시 만듭니다.

예시:

DROP VIEW [dbo].[vOrders];
GO

CREATE VIEW [dbo].[vOrders]
AS 
<select_statement>
GO

자세한 내용은 CREATE VIEW(Transact-SQL)DROP VIEW(Transact-SQL)를 참조하세요.

후속 작업: 뷰 이름을 바꾼 후

  1. 뷰의 이전 이름을 참조하는 모든 개체, 스크립트 및 애플리케이션이 이제 새 이름을 사용하는지 확인합니다.
  2. 뷰를 삭제하고 다시 만들면 뷰에 할당된 세분화된 SQL 권한이 제거됩니다. 뷰에 세분화된 SQL 권한이 할당된 경우 뷰를 다시 만들 때 뷰에 권한을 다시 부여해야 합니다. 개체를 삭제하기 전에 개체에 부여된 세분화된 권한을 검색하려면 sys.database_permissions(Transact-SQL)의 예시를 참조하세요. 사용 권한을 부여하려면 보안 주체에게 사용 권한 부여를 참조하세요.