SQLRETURN SQLColumns(SQLHSTMT StatementHandle, SQLCHAR *CatalogName, SQLSMALLINT NameLength1, SQLCHAR *SchemaName, SQLSMALLINT NameLength2, SQLCHAR *TableName, SQLSMALLINT NameLength3,
SQLCHAR *ColumnName, SQLSMALLINT NameLength4);
Les paramètres optionnels sont les suivants :
SQLColumns déclenche une requête dont le résultat comporte les principaux champs suivants :
| Numéro du champ | Nom du champ | Type du champ | Description du champ | 
| 4 | COLUMN_NAME | VarChar | Nom de la colonne. | 
| 6 | TYPE_NAME | VarChar | Nom du type de la colonne. | 
| 8 | BUFFER_LENGTH | Integer | Taille de la colonne. | 
| 12 | REMARKS | VarChar | Commentaire de la colonne. | 
| 17 | ORDINAL_POSITION | Integer | Numéro de la colonne. | 
| 18 | NULLABLE | VarChar | Si YES, la valeur de la colonne peut être NULL. | 
Le résultat est SQL_SUCCESS en cas de succès.
#include <windows.h>
#include <sql.h>
#include <sqlext.h>
#include <sqltypes.h>
static SQLHSTMT hOrdre;
...
if (SQLColumns(hOrdre, "MaBase%", SQL_NTS, "MonEspace%", SQL_NTS, "MaTable%", SQL_NTS, NULL, 0)!=SQL_SUCCESS)
   {
   ...
   }
...