Partager via


ISSAsynchStatus (fournisseur OLE DB Native Client)

S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

Important

SQL Server Native Client (souvent abrégé en SNAC) a été supprimé dans SQL Server 2022 (16.x) et SQL Server Management Studio 19 (SSMS). Le fournisseur OLE DB pour SQL Server Native Client (SQLNCLI ou SQLNCLI11) et le fournisseur Microsoft OLE DB hérité pour SQL Server (SQLOLEDB) ne sont pas recommandés dans les nouveaux développements. Utilisez à la place le nouveau Microsoft OLE DB Driver (MSOLEDBSQL) pour SQL Server.

ISSAsynchStatus expose la prise en charge des opérations asynchrones SQL Server. Il s'agit d'une interface facultative qui hérite de l'interface OLE DB de base IDBAsynchStatus. Outre les méthodes Abort et GetStatus héritées de IDBAsynchStatus, ISSAsynchStatus fournit une nouvelle méthode qui permet d'attendre qu'une opération asynchrone se termine ou qu'un délai d'expiration soit dépassé.

Méthode Description
ISSAsynchStatus::Abort (OLE DB) Annule une opération s'exécutant de manière asynchrone.
ISSAsynchStatus::GetStatus (OLE DB) Retourne l'état d'une opération s'exécutant de manière asynchrone.
ISSAsynchStatus::WaitForAsynchCompletion (OLE DB) Attend que l'opération s'exécutant de façon asynchrone se termine ou qu'un délai d'expiration soit dépassé.

Notes

L'implémentation ISSAsynchStatus de la méthode ISSAsynchStatus::GetStatus est identique à la méthode IDBAsynchStatus::GetStatus , à la différence près que si l'initialisation d'un objet source de données est abandonnée, E_UNEXPECTED est retourné au lieu de DB_E_CANCELED (bien que ISSAsynchStatus::WaitForAsynchCompletion retourne DB_E_CANCELED). Cela est dû au fait que l'objet source de données ne reste pas dans l'état habituel après une opération d'abandon, afin que d'autres tentatives d'initialisation puissent avoir lieu.

Les méthodes suivantes prennent en charge l'utilisation d'une exécution asynchrone dans SQL Server:

  • ICommand::Execute

  • IOpenRowset::OpenRowset

  • IMultipleResults::GetResult

Voir aussi

Interfaces (OLE DB)
Exécution d’opérations asynchrones