어셈블리 변경
적용 대상:SQL Server
SQL Server에 등록된 어셈블리는 ALTER ASSEMBLY
문을 사용하여 최신 버전에서 업데이트할 수 있습니다. 어셈블리를 업데이트하려면 다음 구문과 함께 ALTER ASSEMBLY
문을 사용합니다.
ALTER ASSEMBLY SQLCLRTest
FROM 'C:\MyDBApp\SQLCLRTest.dll';
ALTER ASSEMBLY
어셈블리를 사용하는 현재 실행 중인 프로세스를 중단하지 않습니다. 프로세스는 비정형 어셈블리를 사용하여 계속 실행됩니다.
ALTER ASSEMBLY
CLR(공용 언어 런타임) 함수, 집계 함수, 저장 프로시저 및 트리거의 서명을 변경하는 데 사용할 수 없습니다. 어셈블리에 새 public 메서드를 추가할 수 있고, 프라이빗 메서드를 어떤 방식으로든 수정할 수 있으며, 서명 또는 특성이 변경되지 않는 한 공용 메서드를 수정할 수 있습니다. 데이터 멤버 또는 기본 클래스를 포함하여 네이티브 직렬화된 사용자 정의 형식 내에 포함된 필드는 ALTER ASSEMBLY
사용하여 변경할 수 없습니다. 다른 모든 변경은 지원되지 않습니다. 자세한 내용은 ALTER ASSEMBLY
어셈블리의 사용 권한 집합 변경
ALTER ASSEMBLY
문을 사용하여 어셈블리의 사용 권한 집합을 변경할 수도 있습니다. 다음 문은 SQLCLRTest
어셈블리의 사용 권한 집합을 EXTERNAL_ACCESS
변경합니다.
ALTER ASSEMBLY SQLCLRTest
WITH PERMISSION_SET = EXTERNAL_ACCESS;
어셈블리의 사용 권한 집합이 SAFE
EXTERNAL_ACCESS
또는 UNSAFE
변경되는 경우 어셈블리에 대한 EXTERNAL ACCESS ASSEMBLY
권한 또는 UNSAFE ASSEMBLY
권한이 있는 비대칭 키 및 해당 로그인을 먼저 만들어야 합니다. 자세한 내용은 어셈블리만들기를 참조하세요.
어셈블리의 소스 코드 추가
ALTER ASSEMBLY
구문의 ADD FILE
절이 CREATE ASSEMBLY
없습니다. 소스 코드 또는 어셈블리와 연결된 다른 파일을 추가하는 데 사용할 수 있습니다. 이렇게 하면 파일이 원래 위치에서 복사되어 데이터베이스의 시스템 테이블에 저장됩니다. 이렇게 하면 UDT(사용자 정의 형식)의 현재 버전을 다시 만들거나 문서화해야 하는 경우 항상 소스 코드 또는 기타 파일이 있습니다.
다음 문은 Point
UDT에 대한 Point.cs
클래스 소스 코드를 추가합니다.
Point.cs
파일에 포함된 텍스트를 복사하고 이름 PointSource
데이터베이스에 저장합니다.
ALTER ASSEMBLY Point
ADD FILE FROM 'C:\Projects\Point\Point.cs' AS PointSource;
관련 콘텐츠
- CLR 통합 어셈블리 관리
- 어셈블리 만들기
- 어셈블리 삭제
- ALTER ASSEMBLY(Transact-SQL)