Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
s’applique à :SQL Server
Azure SQL Database
Azure SQL Managed Instance
L’API ODBC fournit un ensemble standard de fonctions pour la connexion à des sources de données, l’exécution d’instructions SQL et la récupération des résultats. Chaque fonction est une fonction de langage de programmation C avec des descriptions qui incluent l’objectif, la version ODBC, la syntaxe, les arguments, les valeurs de retour, les diagnostics et les exemples de code.
Le niveau de conformité CLI standard peut être l’un des éléments suivants : ISO 92, Open Group, ODBC ou Déprécié. Une fonction étiquetée comme conforme à ISO 92 apparaît également dans Open Group version 1, car Open Group est un superset pur de ISO 92. Une fonction étiquetée comme compatible Open Group apparaît également dans ODBC 3.x, car ODBC 3.x est un superset pur d’Open Group version 1. Une fonction marquée comme compatible ODBC n’apparaît pas dans les deux normes. Une fonction marquée comme déconseillée a été déconseillée dans ODBC 3.x.
La description de la fonction SQLGetDiagField décrit comment gérer les informations de diagnostic. Le texte associé aux valeurs SQLSTATE fournit une description de la condition, mais ne prescrit pas de texte spécifique.
Note
Pour obtenir des informations spécifiques au pilote sur les fonctions ODBC, consultez la section relative au pilote.
Gérer l’allocation et la gestion
Ces fonctions allouent et libèrent des handles pour les environnements, les connexions, les instructions et les descripteurs. Les handles sont le mécanisme principal pour le suivi de l’état dans les applications ODBC.
| Fonction | Descriptif |
|---|---|
| SQLAllocHandle | Alloue un handle d’environnement, de connexion, d’instruction ou de descripteur. Il s’agit de la fonction ODBC 3.x qui remplace les fonctions d’allocation déconseillées. |
| SQLFreeHandle | Libère un handle et des descripteurs d’environnement, de connexion, d’instruction ou de descripteur. |
| SQLAllocConnect | Alloue un handle de connexion. Déconseillé dans ODBC 3.x ; utilisez SQLAllocHandle à la place. |
| SQLAllocEnv | Alloue un handle d’environnement. Déconseillé dans ODBC 3.x ; utilisez SQLAllocHandle à la place. |
| SQLAllocStmt | Alloue un handle d’instruction. Déconseillé dans ODBC 3.x ; utilisez SQLAllocHandle à la place. |
| SQLFreeConnect | Libère un handle de connexion. Déconseillé dans ODBC 3.x ; utilisez SQLFreeHandle à la place. |
| SQLFreeEnv | Libère un handle d’environnement. Déconseillé dans ODBC 3.x ; utilisez SQLFreeHandle à la place. |
| SQLFreeStmt | Arrête le traitement des instructions, ferme les curseurs associés, ignore les résultats en attente et libère éventuellement les ressources associées à un handle d’instruction. |
Fonctions de connexion
Ces fonctions établissent et gèrent les connexions aux sources de données. Ils prennent en charge différentes méthodes de connexion, notamment les connexions standard, les dialogues spécifiques au pilote et la navigation itérative.
| Fonction | Descriptif |
|---|---|
| SQLConnect | Établit une connexion à une source de données à l’aide d’un nom de source de données, d’un ID d’utilisateur et d’un mot de passe. |
| SQLDriverConnect | Établit une connexion à l’aide d’une chaîne de connexion. Prend en charge les boîtes de dialogue spécifiques au pilote pour obtenir des informations de connexion supplémentaires. |
| SQLBrowseConnect | Prend en charge une méthode itérative de découverte et d’énumération des attributs nécessaires pour se connecter à une source de données. |
| SQLDisconnect | Ferme une connexion à une source de données et libère les ressources associées. |
| SQLDataSources | Retourne une liste de sources de données disponibles. Appelé sur le Gestionnaire de pilotes, et non sur un pilote spécifique. |
| SQLDrivers | Retourne la liste des pilotes installés et de leurs attributs. Appelé sur le Gestionnaire de pilotes. |
Préparation et exécution des instructions
Ces fonctions préparent et exécutent des instructions SQL. ODBC prend en charge l’exécution directe et l’exécution préparée, avec une exécution préparée offrant de meilleures performances pour les instructions exécutées à plusieurs reprises.
| Fonction | Descriptif |
|---|---|
| SQLPrepare | Prépare une instruction SQL pour une exécution ultérieure. La source de données compile et optimise l’instruction. |
| SQLExecute | Exécute une instruction préparée. Appel SQLPrepare avant d’appeler cette fonction. |
| Sqlexecdirect | Prépare et exécute une instruction SQL dans un seul appel. Utilisez les instructions exécutées une seule fois. |
| SQLNativeSql | Retourne la chaîne SQL telle que modifiée par le pilote, montrant comment le pilote traduit la syntaxe ODBC SQL. |
| SQLCancel | Annule le traitement sur une instruction. Peut annuler une fonction en cours d’exécution asynchrone ou une fonction s’exécutant sur un autre thread. |
| SQLCancelHandle | Annule le traitement sur une connexion ou une instruction. Plus flexible que SQLCancel pour l’annulation des fonctions de connexion. |
| SQLCompleteAsync | Détermine quand une fonction asynchrone se termine. Utilisé avec le traitement asynchrone basé sur les notifications. |
Liaison de paramètres
Ces fonctions lient des variables d’application aux marqueurs de paramètres dans les instructions SQL. Les paramètres activent les valeurs dynamiques dans les instructions préparées.
| Fonction | Descriptif |
|---|---|
| SQLBindParameter | Lie une variable d’application à un marqueur de paramètre dans une instruction SQL. Prend en charge les paramètres d’entrée, de sortie et d’entrée/sortie. |
| SQLNumParams | Retourne le nombre de paramètres dans une instruction SQL. |
| SQLDescribeParam | Retourne la description d’un marqueur de paramètre, y compris le type de données, la taille et la précision. |
| SQLParamData | Utilisé avec SQLPutData pour fournir des données de paramètre au moment de l’exécution. Retourne le paramètre nécessitant des données. |
| SQLPutData | Envoie une partie ou l’ensemble d’une valeur de données pour un paramètre au moment de l’exécution. Prend en charge les données volumineuses en blocs. |
| SQLSetParam | Lie un paramètre. Déconseillé dans ODBC 3.x ; utilisez SQLBindParameter à la place. |
| SQLParamOptions | Définit les options des tableaux de paramètres. Déconseillé dans ODBC 3.x ; utilisez plutôt des attributs d’instruction. |
Liaison et récupération du jeu de résultats
Ces fonctions lient les mémoires tampons d’application aux colonnes du jeu de résultats et récupèrent des données à partir des résultats de la requête.
| Fonction | Descriptif |
|---|---|
| SQLBindCol | Lie une variable d’application à une colonne de jeu de résultats pour les opérations de récupération suivantes. |
| SQLFetch | Récupère l’ensemble de lignes suivant des données du jeu de résultats dans des colonnes liées. |
| SQLFetchScroll | Récupère l’ensemble de lignes spécifié à partir d’un jeu de résultats. Prend en charge le défilement jusqu’au premier, dernier, suivant, précédent, absolu et positions relatives. |
| SQLGetData | Récupère les données d’une seule colonne après SQLFetch ou SQLFetchScroll. Utile pour les données volumineuses ou les colonnes indépendantes. |
| SQLExtendedFetch | Récupère l’ensemble de lignes spécifié de données. Déconseillé dans ODBC 3.x ; utilisez SQLFetchScroll à la place. |
| SQLMoreResults | Détermine si d’autres résultats sont disponibles sur une instruction et passe au jeu de résultats suivant. |
| SQLRowCount | Retourne le nombre de lignes affectées par une instruction UPDATE, INSERT ou DELETE. |
Opérations de curseur
Ces fonctions gèrent le comportement du curseur, le positionnement et les opérations en bloc sur les ensembles de lignes.
| Fonction | Descriptif |
|---|---|
| SQLSetPos | Définit la position du curseur dans un ensemble de lignes et permet aux applications d’actualiser, de mettre à jour ou de supprimer des données à cette position. |
| SQLBulkOperations | Effectue des opérations d’insertion, de mise à jour, de suppression ou de récupération par signet en bloc sur les ensembles de lignes. |
| SQLCloseCursor | Ferme un curseur ouvert sur une instruction et ignore les résultats en attente. |
| SQLGetCursorName | Retourne le nom du curseur associé à une instruction. |
| SQLSetCursorName | Spécifie un nom de curseur pour les instructions UPDATE et DELETE positionnées. |
| SQLSetScrollOptions | Définit les options pour le comportement du curseur. Déconseillé dans ODBC 3.x ; utilisez plutôt des attributs d’instruction. |
Fonctions catalogue
Ces fonctions récupèrent des métadonnées sur la structure de base de données, notamment les tables, les colonnes, les index, les privilèges et les procédures stockées.
| Fonction | Descriptif |
|---|---|
| SQLTables | Retourne une liste de noms de tables dans la source de données. Prend en charge le filtrage par catalogue, schéma et type de table. |
| SQLColumns | Retourne une liste de noms de colonnes et leurs attributs pour les tables spécifiées. |
| SQLPrimaryKeys | Retourne les colonnes qui composent la clé primaire d’une table. |
| SQLForeignKeys | Retourne des clés étrangères dans une table ou des clés étrangères dans d’autres tables qui font référence à la clé primaire d’une table. |
| SQLStatistics | Retourne des statistiques sur une table et une liste d’index qui lui sont associés. |
| SQLSpecialColumns | Retourne des colonnes qui identifient de manière unique une ligne ou des colonnes qui sont automatiquement mises à jour lorsqu’une valeur de la ligne est mise à jour. |
| SQLColumnPrivileges | Retourne une liste de colonnes et de privilèges associés pour une table. |
| SQLTablePrivileges | Retourne une liste de tables et les privilèges associés à chaque table. |
| SQLProcedures | Retourne une liste de noms de procédure stockée dans la source de données. |
| SQLProcedureColumns | Retourne la liste des paramètres d’entrée/sortie et des colonnes dans le jeu de résultats pour les procédures spécifiées. |
| SQLGetTypeInfo | Retourne des informations sur les types de données pris en charge par la source de données. |
Opérations de descripteur
Ces fonctions obtiennent et définissent des valeurs de descripteur. Les descripteurs contiennent des métadonnées sur les paramètres et les colonnes du jeu de résultats.
| Fonction | Descriptif |
|---|---|
| SQLGetDescField | Retourne la valeur d’un seul champ d’un enregistrement de descripteur. |
| SQLGetDescRec | Retourne plusieurs champs d’un enregistrement de descripteur dans un seul appel. |
| SQLSetDescField | Définit la valeur d’un seul champ d’un enregistrement de descripteur. |
| SQLSetDescRec | Définit plusieurs champs d’un enregistrement de descripteur dans un seul appel. |
| SQLCopyDesc | Copie les informations de descripteur d’un handle de descripteur vers une autre. |
Fonctions d’attribut
Ces fonctions obtiennent et définissent des attributs pour les environnements, les connexions et les instructions. Les attributs contrôlent différents aspects du comportement ODBC.
| Fonction | Descriptif |
|---|---|
| SQLSetEnvAttr | Définit un attribut d’environnement qui affecte toutes les connexions dans cet environnement. |
| SQLGetEnvAttr | Retourne la valeur d’un attribut d’environnement. |
| SQLSetConnectAttr | Définit un attribut de connexion qui affecte la connexion et les instructions sur celui-ci. |
| SQLGetConnectAttr | Retourne la valeur d’un attribut de connexion. |
| SQLSetStmtAttr | Définit un attribut d’instruction. Inclut les paramètres de curseur, de délai d’attente de requête et de paramètre. |
| SQLGetStmtAttr | Retourne la valeur d’un attribut d’instruction. |
| SQLSetConnectOption | Définit une option de connexion. Déconseillé dans ODBC 3.x ; utilisez SQLSetConnectAttr à la place. |
| SQLGetConnectOption | Retourne la valeur d’une option de connexion. Déconseillé dans ODBC 3.x ; utilisez SQLGetConnectAttr à la place. |
| SQLSetStmtOption | Définit une option d’instruction. Déconseillé dans ODBC 3.x ; utilisez SQLSetStmtAttr à la place. |
| SQLGetStmtOption | Retourne la valeur d’une option d’instruction. Déconseillé dans ODBC 3.x ; utilisez SQLGetStmtAttr à la place. |
Fonctions de diagnostic et d’informations
Ces fonctions récupèrent les informations de diagnostic, les messages d’erreur, les fonctionnalités du pilote et les informations de source de données.
| Fonction | Descriptif |
|---|---|
| SQLGetDiagField | Retourne la valeur d’un champ dans un enregistrement de diagnostic contenant des informations d’erreur, d’avertissement et d’état. |
| SQLGetDiagRec | Retourne plusieurs champs couramment utilisés d’un enregistrement de diagnostic, notamment SQLSTATE, le code d’erreur natif et le texte du message. |
| Sqlerror | Retourne des informations d’erreur. Déconseillé dans ODBC 3.x ; utilisez SQLGetDiagRec à la place. |
| SQLGetFunctions | Retourne des informations sur le fait qu’un pilote prend en charge une fonction ODBC spécifique. |
| SQLGetInfo | Retourne des informations générales sur le pilote et la source de données, notamment les fonctionnalités et fonctionnalités prises en charge. |
Métadonnées du jeu de résultats
Ces fonctions retournent des informations sur la structure des jeux de résultats.
| Fonction | Descriptif |
|---|---|
| SQLNumResultCols | Retourne le nombre de colonnes dans un jeu de résultats. |
| SQLDescribeCol | Retourne le nom de colonne, le type de données, la précision, l’échelle et la possibilité de nullabilité pour une colonne de jeu de résultats. |
| SQLColAttribute | Retourne des informations de descripteur pour une colonne dans un jeu de résultats. Plus flexible que SQLDescribeCol. |
| SQLColAttributes | Retourne des attributs pour une colonne. Déconseillé dans ODBC 3.x ; utilisez SQLColAttribute à la place. |
Gestion des transactions
Ces fonctions gèrent les limites des transactions, en contrôlant le moment où les modifications sont validées ou restaurées.
| Fonction | Descriptif |
|---|---|
| SQLEndTran | Valide ou restaure une transaction. Peut s’appliquer à toutes les connexions sur un environnement ou une seule connexion. |
| SQLTransact | Valide ou restaure une transaction. Déconseillé dans ODBC 3.x ; utilisez SQLEndTran à la place. |