Share via


SQLTables

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

SqlTables peut être exécuté sur un curseur de serveur statique. Une tentative d’exécution de SQLTables sur un curseur pouvant être mis à jour (dynamique ou jeu de clés) retourne SQL_SUCCESS_WITH_INFO indiquant que le type de curseur a été modifié.

SQLTables signale les tables de toutes les bases de données lorsque le paramètre CatalogName est SQL_ALL_CATALOGS et que tous les autres paramètres contiennent des valeurs par défaut (pointeurs NULL).

Pour signaler les catalogues, schémas et types de tables disponibles, SQLTables utilise particulièrement les chaînes vides (pointeurs d’octets de longueur nulle). Les chaînes vides ne sont pas des valeurs par défaut (pointeurs NULL).

Le pilote ODBC SQL Server Native Client prend en charge les informations de création de rapports pour les tables sur les serveurs liés en acceptant un nom en deux parties pour le paramètre CatalogName : Linked_Server_Name.Catalog_Name.

SQLTables retourne des informations sur toutes les tables dont le nom correspond à TableName et sont détenues par l’utilisateur actuel.

SQLTables et paramètres table

Lorsque l’attribut d’instruction SQL_SOPT_SS_NAME_SCOPE a la valeur SQL_SS_NAME_SCOPE_TABLE_TYPE, plutôt que sa valeur par défaut de SQL_SS_NAME_SCOPE_TABLE, SQLTables retourne des informations sur les types de tables. La valeur TABLE_TYPE retournée pour un type de table dans la colonne 4 du jeu de résultats retourné par SQLTables est TYPE DE TABLE. Pour plus d'informations sur SQL_SOPT_SS_NAME_SCOPE, consultez SQLSetStmtAttr.

Les tables, les vues et les synonymes partagent un espace de noms commun, distinct de l'espace de noms utilisé par les types de table. Bien qu'il ne soit pas possible d'avoir une table et une vue ayant le même nom, vous pouvez avoir une table et un type de table avec le même nom dans le même catalogue et le même schéma.

Pour plus d’informations sur les paramètres table, consultez Paramètres table (ODBC).

Exemple

// Get a list of all tables in the current database.  
SQLTables(hstmt, NULL, 0, NULL, 0, NULL, 0, NULL,0);  
  
// Get a list of all tables in all databases.  
SQLTables(hstmt, (SQLCHAR*) "%", SQL_NTS, NULL, 0, NULL, 0, NULL,0);  
  
// Get a list of databases on the current connection's server.  
SQLTables(hstmt, (SQLCHAR*) "%", SQL_NTS, (SQLCHAR*)"", 0, (SQLCHAR*)"",  
    0, NULL, 0);  

Voir aussi

Fonction SQLTables
Détails de l’implémentation d’API ODBC