적용 대상:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Microsoft Fabric의 SQL 데이터베이스
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 = 시스템, 0 = 사용자. | 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 | 예 |