SQLCloseCursor, fonction
Conformité
Version introduite : Conformité aux normes ODBC 3.0 : ISO 92
Résumé
SQLCloseCursor ferme un curseur qui a été ouvert sur une instruction et ignore les résultats en attente.
Syntaxe
SQLRETURN SQLCloseCursor(
SQLHSTMT StatementHandle);
Arguments
StatementHandle
[Entrée] Handle d’instruction.
Retours
SQL_SUCCESS, SQL_SUCCESS_WITH_INFO, SQL_ERROR ou SQL_INVALID_HANDLE.
Diagnostics
Lorsque SQLCloseCursor retourne SQL_ERROR ou SQL_SUCCESS_WITH_INFO, une valeur SQLSTATE associée peut être obtenue en appelant SQLGetDiagRec avec un HandleType de SQL_HANDLE_STMT et un Handle de StatementHandle. Le tableau suivant répertorie les valeurs SQLSTATE couramment retournées par SQLCloseCursor et explique chacune d’elles dans le contexte de cette fonction ; La notation « (DM) » précède les descriptions de SQLSTATEs retournées par le Gestionnaire de pilotes. Le code de retour associé à chaque valeur SQLSTATE est SQL_ERROR, sauf indication contraire.
SQLSTATE | Error | Description |
---|---|---|
01000 | Avertissement général | Message d’information spécifique au pilote. (La fonction retourne SQL_SUCCESS_WITH_INFO.) |
24 000 | État de curseur non valide | Aucun curseur n’a été ouvert sur l’InstructionHandle. (Cette valeur est retournée uniquement par une instance ODBC 3. pilote x .) |
HY000 | Erreur générale | Une erreur s’est produite pour laquelle il n’y avait pas de SQLSTATE spécifique et pour laquelle aucun SQLSTATE spécifique à l’implémentation n’a été défini. Le message d’erreur retourné par SQLGetDiagRec dans la mémoire tampon *MessageText décrit l’erreur et sa cause. |
HY001 | Erreur d’allocation de mémoire | Le pilote n’a pas pu allouer la mémoire nécessaire pour prendre en charge l’exécution ou l’achèvement de la fonction. |
HY010 | Erreur de séquence de fonction | (DM) Une fonction en cours d’exécution asynchrone a été appelée pour le handle de connexion associé à l’InstructionHandle et était toujours en cours d’exécution lorsque cette fonction a été appelée. (DM) Une fonction en cours d’exécution asynchrone a été appelée pour l’InstructionHandle et était toujours en cours d’exécution lorsque cette fonction a été appelée. (DM) SQLExecute, SQLExecDirect, SQLBulkOperations ou SQLSetPos a été appelé pour l’InstructionHandle et a retourné SQL_NEED_DATA. Cette fonction a été appelée avant l’envoi des données pour toutes les colonnes ou paramètres de données au moment de l’exécution. |
HY013 | Erreur de gestion de la mémoire | L’appel de fonction n’a pas pu être traité, car les objets de mémoire sous-jacents n’ont pas pu être accessibles, peut-être en raison de conditions de mémoire insuffisantes. |
HY117 | La connexion est suspendue en raison d’un état de transaction inconnu. Seules les fonctions de déconnexion et de lecture seule sont autorisées. | (DM) Pour plus d’informations sur l’état suspendu, consultez Fonction SQLEndTran. |
HYT01 | Délai d’attente de la connexion expiré | Le délai d’expiration de la connexion a expiré avant que la source de données ne réponde à la demande. Le délai d’expiration de connexion est défini via SQLSetConnectAttr, SQL_ATTR_CONNECTION_TIMEOUT. |
IM001 | Le pilote ne prend pas en charge cette fonction | (DM) Le pilote associé à l’InstructionHandle ne prend pas en charge la fonction . |
Commentaires
SQLCloseCursor retourne SQLSTATE 24000 (état de curseur non valide) si aucun curseur n’est ouvert. L’appel de SQLCloseCursor revient à appeler SQLFreeStmt avec l’option SQL_CLOSE, à l’exception que SQLFreeStmt avec SQL_CLOSE n’a aucun effet sur l’application si aucun curseur n’est ouvert sur l’instruction, tandis que SQLCloseCursor renvoie SQLSTATE 24000 (état de curseur non valide).
Notes
Si odbc 3. x application fonctionnant avec odbc 2. Le pilote x appelle SQLCloseCursor quand aucun curseur n’est ouvert, SQLSTATE 24000 (état de curseur non valide) n’est pas retourné, car le Gestionnaire de pilotes mappe SQLCloseCursor à SQLFreeStmt avec SQL_CLOSE.
Pour plus d’informations, consultez Fermeture du curseur.
Exemple de code
Consultez Fonction SQLBrowseConnect et Fonction SQLConnect.
Fonctions connexes
Pour obtenir des informations sur | Consultez |
---|---|
Annulation du traitement des instructions | SQLCancel, fonction |
Libération d’un handle | Fonction SQLFreeHandle |
Traitement de plusieurs jeux de résultats | Fonction SQLMoreResults |
Voir aussi
Informations de référence sur l’API ODBC
Fichiers d’en-tête ODBC