Бөлісу құралы:


ISSAsynchStatus (поставщик OLE DB собственного клиента)

Применимо: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure azure Synapse Analytics Analytics Platform System (PDW)

Внимание

Собственный клиент SQL Server (часто сокращенный SNAC) был удален из SQL Server 2022 (16.x) и SQL Server Management Studio 19 (SSMS). Поставщик OLE DB собственного клиента SQL Server (SQLNCLI или SQLNCLI11) и устаревший поставщик Microsoft OLE DB для SQL Server (SQLOLEDB) не рекомендуется для новой разработки. Перейдите на новый драйвер Microsoft OLE DB (MSOLEDBSQL) для SQL Server .

ISSAsynchStatus предоставляет поддержку асинхронных операций SQL Server. Этот необязательный интерфейс наследует основной интерфейс OLE DB — IDBAsynchStatus. Помимо методов Abort и GetStatus , унаследованных от IDBAsynchStatus, ISSAsynchStatus предоставляет один новый метод, который используется для ожидания конца асинхронной операции или истечения назначенного времени.

Метод Description
ISSAsynchStatus::Abort (OLE DB) Отменяет операцию асинхронного выполнения.
ISSAsynchStatus::GetStatus (OLE DB) Возвращает состояние операции асинхронного выполнения.
ISSAsynchStatus::WaitForAsynchCompletion (OLE DB) Ждет завершения синхронной операции или истечения назначенного времени.

Замечания

Реализация метода ISSAsynchStatus::GetStatus в интерфейсе ISSAsynchStatus аналогична методу IDBAsynchStatus::GetStatus , за одним исключением: если инициализация объекта источника данных прервана преждевременно, возвращается не DB_E_CANCELED, а E_UNEXPECTED (хотя ISSAsynchStatus::WaitForAsynchCompletion возвращает DB_E_CANCELED). Это происходит потому, что объект источника данных не остается в обычном состоянии, следующем за аварийным прерыванием операции, чтобы можно было предпринимать новые попытки инициализации.

Следующие методы поддерживают использование асинхронного выполнения в SQL Server:

  • ICommand::Execute

  • IOpenRowset::OpenRowset

  • IMultipleResults::GetResult

См. также

Интерфейсы (OLE DB)
Выполнение асинхронных операций