우리는 우리가 다양한 데이터베이스 오브젝트와 같이 보고,저장되는 절차,트리거 기능 및 인덱스에서는 관계형 데이터베이스입니다. 여러 번,우리는 이러한 객체에 대한 정의를보고 싶습니다. SSMS graphical way 또는 t-SQL 을 사용하여 스크립트를 생성 할 수 있습니다. 예를 들어 SQL 뷰의 정의를보고 싶습니다.. 스크립트를 생성하는 두 가지 방법을 모두 살펴 보겠습니다.,
는 다른 방법을 볼 수 있는 개체의 정의
SSMS 스크립트 마법사:
데이터베이스를 확장하고 가 전망이다. 스크립트를 생성하려는 특정보기를 마우스 오른쪽 버튼으로 클릭하고 Script View as->Create To 를 클릭하십시오.다음 방법으로 스크립트를 얻을 수 있습니다.
- 새 쿼리 창에서
- 에서 스크립트를 가져옵니다.,SQL 파일
- 사본에서 스크립트는 클립보드
- 얻는 스크립트에서 SQL 에이전트 작업
스크립트를 생성 마법사:
우리가 사용할 수 있는 스크립트를 생성 마법사 또는 카탈로그 뷰 쿼리뿐만 아니라 생성하는 스크립트입니다. 데이터베이스를 마우스 오른쪽 버튼으로 클릭하고 작업->스크립트 생성으로 이동하십시오.
에서 스크립트를 생성 마법사를 선택하는 특정 데이터베이스 객체고 다음을 클릭합니다. 스크립트를 가져 오기 위해 마법사를 완료 할 수 있습니다.,
T-SQL 사용:
우리는 t-SQL 쿼리를 사용할 수있을뿐만 아니라 객체의 스크립트를 얻을 수 있습니다. 다음 t-SQL 메서드를 사용하여 개체에 대한 정의를 가져올 수 있습니다.
- Information_Schama 를 사용하여 스크립트를 가져옵니다.,Views:
다음 쿼리를 실행하여 원본 데이터베이스에서 지정 개체에 이름을 where
1234선택 TABLE_NAME 으로 이름,VIEW_DEFINITION 로 ViewDefinition에서 INFORMATION_SCHEMA.,Viewswhere TABLE_NAME=’vEmployee’ - Sp_helptext system procedure:
You can use sp_helptext system procedure as well to get the script. You need to specify the object name along with the schema if it is other than dbo.
1EXEC sp_helptext ‘.,’ - object_definition 기능
우리가 사용할 수 있는 object_definition 기능뿐만 아니라 스크립트를 생성한다. 에서 다음과 같은 쿼리 우리가 사용하는 object_definition 기능에 대한 보 vEmployee 에 AdventureWorks2017 데이터베이스
1선택 object_definition(OBJECT_ID(N’.,’))
필요한 권한을 생성 개체를 스크립트
그것은 필수적인 측면이 어떤 DBA 하 제어 사용에 대한 액세스 권한다. 여러 번 사용자는 의무를 수행하기 위해 데이터베이스에 대한 추가 권한이 필요합니다. 기본적으로 공용 역할을 가진 사용자에게는 개체의 정의를 볼 수 있는 권한이 없습니다. 개발자가 비 프로덕션 환경에서이를 실행할 수 있도록 객체 정의를 가져 오는 것이 유용합니다., 또한 특히 프로덕션 환경에서 사용자에게 권한있는 권한을 부여하고 싶지 않습니다.
새 데이터베이스 사용자를 만들고 AdventureWorks2014 데이터베이스에서 공개 역할을 제공합시다.
공용 역할 권한이 있는 로그인 자격 증명을 사용하여 SQL Server 에 연결합니다.
쿼리를 실행합보기를 얻을 수의 정의는 개체입니다. 명령 sp_helptext 는 객체가 데이터베이스에 존재하지 않는다는 오류 메시지를 제공합니다.,우리가 INFORMATION_SCHEMA 를 사용하여 스크립트를 가져 오려고하면.보기,그것은 어떤 오류 메시지를 제공하지 않습니다;그러나,그것은 어떤 행을 반환하지 않습니다.
사용할 수 없습니다 SSMS 뿐만 아니기 때문에 보이지 않는 객체에 대한 공개 역할을 액세스합니다.
sql Server 에서 View Definition 권한을 사용하여 사용자가 객체 정의를 볼 수 있도록 할 수 있습니다. 우리는 공개 역할 또는 개별 사용자에게이 액세스 권한을 제공 할 수 있습니다.,
- 공용 역할을 가진 모든 사용자에게 뷰 객체 정의 권한을 제공하려면 다음 쿼리를 실행하십시오.,v>
123USE AdventureWorks2017GOGRANT VIEW ANY DEFINITION TO Rajendra
1
|
GRANT VIEW DEFINITION on ., TO Rajendra
|
Let’s provide access to a specific user (Rajendra) on a specific object ( .) and verify the permissions to view the definition of an object.
1
|
EXEC sp_helptext ‘.,’
|
시도할 수 있습니다 다른 방법을 넣어 지정된 이전 섹션입니다. 보기 정의 권한을 할당 한 후 모든 개체를 볼 수있을뿐만 아니라 SSMS 에서 연결을 새로 고칠 수 있습니다.
sp_helprotect 명령을 사용하여 권한을 추적 할 수 있습니다.,
- 아래 스크린샷에서,관찰할 수 있습니다 다음과 같다:
- 개체:vEmployee
- 소유자(Schema):HumanResources
- 피부(사용자): 라젠드라
- 자(권한자):dbo
- 사용 권한:권한을 부여
- 작업(권리):뷰 정의
취소 뷰 정의 권한
우리는 권한을 부여하는 것을 배웠 뷰 정의 사용자에게 권한, 역할 또는 객체에서 SQL 서버는 부분입니다., 이러한 뷰 정의 권한을 취소하는 방법을 아는 것도 중요한 측면입니다. 여러 번 사용자에게 임시 액세스 권한을 부여하고 나중에 취소하는 것이 좋습니다. Revoke View Any Definition 명령을 사용하여 모든 데이터베이스에서 사용자에게 권한을 취소 할 수 있습니다.,iv>
1
2
3
|
USE AdventureWorks2017
GO
REVOKE VIEW DEFINITION on ., 하는 라젠드라
|
결론
이 문서에서,우리는 탐험 권한을 부여하고 취소 뷰 정의 권한에서는 SQL Server 을 보려면에 대한 정의입니다. 개체 정의에 대한 사용 권한을 관리하는 데 필요한 정보를 제공합니다. 의견이나 질문이 있으시면 아래 의견에 남겨 주시기 바랍니다.,
- 저자
- 최근 게시글
그는 창조주 하나의 가장 큰 무료 온라인 컬렉션에 기사의 단일 주제,함께 그의 50 부통령인 아네트 시우-리 SQL 서버에 항상 가용성 그룹이 있습니다. 에 따라 자신의 기여하는 SQL Server 커뮤니티,그로 인정을 받고있는 다양한 상을 포함한”최고의 저자는”올해 지속적으로 2020 년과 2021 년에서 SQLShack.,
라이에 항상 관심 새로운 도전은 그렇다면 상담이 필요하신 데 도움이 어떤 주제에 덮여 그의 저술에서 도달할 수 있는 라젠드라.gupta16@gmail.,com
모두 보기 게시물에 의해 라젠드라 Gupta
- 세션 제한 시간은 SQL 서버에 항상 가용성 그룹-February8, 2021
- 수행하는 크고 작은 버전의 업그레이드 AWS RDS SQL Server 월 29,2021
- 배포 AWS RDS PostgreSQL 인스턴스-January27,2021
Leave a Reply