Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Conformiteit
Versie geïntroduceerd: ODBC 3.8
Naleving van standaarden: geen
Samenvatting
MET SQLAsyncNotificationCallback kan een stuurprogramma terugbellen naar Driver Manager wanneer er enige voortgang is voor de huidige asynchrone bewerking nadat het stuurprogramma SQL_STILL_EXECUTING retourneert.
SQLAsyncNotificationCallback kan alleen worden aangeroepen door het stuurprogramma.
Stuurprogramma's roepen SQLAsyncNotificationCallback niet aan met de functienaam SQLAsyncNotificationCallback. In plaats daarvan geeft de Driver Manager een functiewijzer door aan een stuurprogramma als de waarde voor het attribuut SQL_ATTR_ASYNC_DBC_NOTIFICATION_CALLBACK of SQL_ATTR_ASYNC_STMT_NOTIFICATION_CALLBACK van respectievelijk de bijbehorende verbindingsgreep of instructiegreep. Aan verschillende handvatten kunnen verschillende function pointer-waarden worden toegewezen. Het type functiepointer wordt gedefinieerd als SQL_ASYNC_NOTIFICATION_CALLBACK.
SQLAsyncNotificationCallback is draadveilig. Een stuurprogramma kan ervoor kiezen om meerdere threads te gebruiken die SQLAsyncNotificationCallback aanroepen op verschillende ingangen tegelijk.
Syntaxis
typedef SQLRETURN (SQL_API *SQL_ASYNC_NOTIFICATION_CALLBACK)(
SQLPOINTER pContex,
BOOL fLast);
Arguments
pContex
Wijs een gegevensstructuur aan die is gedefinieerd door Driver Manager. De waarde wordt doorgegeven aan het stuurprogramma via SQLSetConnectAttr(SQL_ATTR_ASYNC_DBC_NOTIFICATION_CONTEXT) of SQLSetStmtAttr(SQL_ATTR_ASYNC_STMT_NOTIFICATION_CONTEXT). Het stuurprogramma heeft geen toegang tot de waarde.
fLast
Wordt gebruikt door een stuurprogramma om aan te geven dat deze callback-functieaanroep de laatste is voor de huidige asynchrone bewerking. Het stuurprogramma retourneert een andere retourcode dan SQL_STILL_EXECUTING wanneer Driver Manager de functie opnieuw aanroept. Driver Manager kan deze informatie bijvoorbeeld gebruiken om de toepassing vooraf te informeren dat de asynchrone bewerking wordt voltooid.
Als handle geen geldige ingang is van het type dat is opgegeven door HandleType, retourneert SQLCancelHandle SQL_INVALID_HANDLE.
Retouren
SQL_SUCCESS of SQL_ERROR.
Diagnostics
SQLAsyncNotificationCallback kan SQL_ERROR retourneren voor de volgende twee situaties (deze duiden op een implementatieprobleem in het stuurprogramma of stuurprogrammabeheer.
| Fout | Description |
|---|---|
| De verbinding of instructie heeft geen melding aangevraagd. | |
| Ongeldige referentie | Het stuurprogramma heeft een ongeldige ingang doorgegeven, waardoor de interne validatietests van Driver Manager zijn mislukt. |