SQLRETURN SQLForeignKeys(SQLHSTMT StatementHandle, SQLCHAR *PKCatalogName, SQLSMALLINT NameLength1, SQLCHAR *PKSchemaName, SQLSMALLINT NameLength2, SQLCHAR *PKTableName, SQLSMALLINT NameLength3,
SQLCHAR *FKCatalogName, SQLSMALLINT NameLength4, SQLCHAR *FKSchemaName, SQLSMALLINT NameLength5, SQLCHAR *FKTableName, SQLSMALLINT NameLength6);
Les paramètres optionnels sont les suivants :
SQLForeignKeys 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 |
3 | PKTABLE_NAME | VarChar | Nom de la table mère. |
4 | PKCOLUMN_NAME | VarChar | Nom de la colonne mère. |
7 | FKTABLE_NAME | VarChar | Nom de la table fille. |
8 | FKCOLUMN_NAME | VarChar | Nom de la colonne fille. |
9 | KEY_SEQ | SmallInt | Numéro de la colonne fille. |
12 | FK_NAME | VarChar | Nom de la contrainte. |
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 (SQLForeignKeys(hOrdre, NULL, 0, NULL, 0, NULL, 0, "MaBase%", SQL_NTS, "MonEspace%", SQL_NTS, "MaTable%")!=SQL_SUCCESS)
{
...
}
...