CursorOpen 이벤트 클래스
적용 대상: SQL ServerAzure SQL Database Azure SQL Managed Instance
CursorOpen 이벤트 클래스는 API(애플리케이션 프로그래밍 인터페이스) 커서에서 발생하는 커서 열기 이벤트를 설명합니다. 커서 열기 이벤트는 SQL Server 데이터베이스 엔진 커서 및 커서 옵션과 연결할 SQL 문을 정의한 다음 커서를 채울 때 발생합니다.
커서의 성능을 기록하는 추적에 CursorOpen 이벤트 클래스를 포함합니다. CursorOpen 이벤트 클래스가 추적에 포함되는 경우 발생하는 오버헤드의 양은 추적 중 데이터베이스에 대해 커서가 사용된 빈도에 따라 달라집니다. 커서를 광범위하게 사용하는 경우 추적으로 성능이 크게 저하될 수 있습니다.
CursorOpen 이벤트 클래스 데이터 열
데이터 열 이름 | 데이터 형식 | Description | 열 ID | 필터 가능 |
---|---|---|---|---|
ApplicationName | nvarchar | SQL Server 인스턴스에 대한 연결을 만든 클라이언트 애플리케이션의 이름입니다. 이 열은 표시된 프로그램 이름이 아닌 애플리케이션에서 전달되는 값으로 채워집니다. | 10 | 예 |
ClientProcessID | int | 호스트 컴퓨터에서 클라이언트 애플리케이션이 실행 중인 프로세스에 할당된 ID입니다. 클라이언트가 클라이언트 프로세스 ID를 제공하는 경우 이 데이터 열이 채워집니다. | 9 | 예 |
DatabaseID | int | USE database 문으로 지정한 데이터베이스 ID이거나 지정한 인스턴스에 대해 USE database문이 발급되지 않은 경우에 사용되는 기본 데이터베이스 ID입니다. Sql Server Profiler는 ServerName 데이터 열이 추적에 캡처되고 서버를 사용할 수 있는 경우 데이터베이스의 이름을 표시합니다. DB_ID 함수를 사용하여 데이터베이스의 값을 결정합니다. | 3 | 예 |
DatabaseName | nvarchar | 사용자 문이 실행 중인 데이터베이스의 이름입니다. | 35 | 예 |
EventClass | int | 기록된 이벤트의 유형 = 53입니다. | 27 | 아니요 |
EventSequence | int | 일괄 처리의 CursorOpen 이벤트 클래스 시퀀스입니다. | 51 | 아니요 |
GroupID | int | SQL Trace 이벤트가 발생하는 워크로드 그룹의 ID입니다. | 66 | 예 |
Handle | int | ODBC, OLE DB, DB-Library가 서버와의 공동 실행을 위해 사용하는 정수입니다. | 33 | 예 |
HostName | nvarchar | 클라이언트가 실행 중인 컴퓨터의 이름입니다. 클라이언트에서 호스트 이름을 제공하는 경우 이 데이터 열이 채워집니다. 호스트 이름을 확인하려면 HOST_NAME 함수를 사용합니다. | 8 | 예 |
IntegerData | int | 커서 유형입니다. 값: 1 = 키 집합 2 = 동적 4 = 앞으로만 8 = 정적 16 = 빨리 감기 |
25 | 예 |
IsSystem | int | 시스템 프로세스 또는 사용자 프로세스에서 이벤트가 발생했는지 여부를 나타냅니다. 1 = system, 0 = user. | 60 | 예 |
LoginName | nvarchar | 사용자의 로그인 이름입니다(SQL Server 보안 로그인 또는 DOMAIN\username 형식의 Microsoft Windows 로그인 자격 증명). | 11 | 예 |
LoginSid | image | 로그인한 사용자의 SID(보안 식별자)입니다. 이 정보는 sys.server_principals 카탈로그 뷰에 있습니다. 각 SID는 서버의 각 로그인에 대해 고유합니다. | 41 | 예 |
NTDomainName | nvarchar | 사용자가 속한 Windows 도메인입니다. | 7 | 예 |
NTUserName | nvarchar | Windows 사용자 이름입니다. | 6 | 예 |
RequestID | int | 커서를 연 요청 식별자입니다. | 49 | 예 |
데이터 열이 추적에서 캡처되고 서버를 사용할 수 있으면 | nvarchar | 추적 중인 SQL Server 인스턴스의 이름입니다. | 26 | 아니요 |
SessionLoginName | nvarchar | 세션을 시작한 사용자의 로그인 이름입니다. 예를 들어 Login1을 사용하여 SQL Server에 연결하고 Login2 로 문을 실행하는 경우 SessionLoginName 은 Login1을 표시하고 LoginName 은 Login2를 표시합니다. 이 열에는 SQL Server 및 Windows 로그인이 모두 표시됩니다. | 64 | 예 |
SPID | int | 이벤트가 발생한 세션의 ID입니다. | 12 | 예 |
StartTime | 날짜/시간 | 이벤트가 시작된 시간(사용 가능한 경우)입니다. | 14 | 예 |
TransactionID | bigint | 트랜잭션의 시스템 할당 ID입니다. | 4 | 예 |
XactSequence | bigint | 현재 트랜잭션을 설명하는 토큰입니다. | 50 | 예 |