Collections de schémas SQL Server (ADO.NET)
Le fournisseur de données Microsoft .NET Framework pour SQL Server prend en charge d'autres collections de schémas en plus des collections de schémas courantes. Les collections de schémas varient légèrement selon la version de SQL Server que vous utilisez. Pour établir la liste des collections de schémas prises en charge, appelez la méthode GetSchema sans argument ou avec le nom de collection de schémas « MetaDataCollections ». Cette opération retourne un DataTable avec une liste des collections de schémas prises en charge, le nombre de restrictions qu'elles prennent en charge et le nombre d'éléments d'identification qu'elles utilisent.
Bases de données
ColumnName |
DataType |
Description |
---|---|---|
database_name |
String |
Nom de la base de données. |
Dbid |
Int16 |
ID de la base de données. |
create_date |
DateTime |
Date de création de la base de données. |
Clés étrangères
ColumnName |
DataType |
Description |
---|---|---|
constraint_catalog |
String |
Catalogue auquel la contrainte appartient. |
constraint_schema |
String |
Schéma contenant la contrainte. |
constraint_name |
String |
Nom. |
table_catalog |
String |
Nom de la table dont la contrainte fait partie. |
table_schema |
String |
Schéma contenant la table. |
table_name |
String |
Nom de la table |
constraint_type |
String |
Type de contrainte. Seul « FOREIGN KEY » est autorisé. |
is_deferrable |
String |
Indique si la contrainte peut être différée. Retourne NO. |
initially_deferred |
String |
Indique si la contrainte est initialement différée. Retourne NO. |
Index
ColumnName |
DataType |
Description |
---|---|---|
constraint_catalog |
String |
Catalogue auquel l'index appartient. |
constraint_schema |
String |
Schéma contenant l'index. |
constraint_name |
String |
Nom de l'index. |
table_catalog |
String |
Nom de la table auquel l'index est associé. |
table_schema |
String |
Schéma contenant la table à laquelle l'index est associé. |
table_name |
String |
Nom de table. |
Indexes (SQL Server 2008)
Depuis .NET Framework version 3.5 SP1 et SQL Server 2008, les colonnes suivantes sont été ajoutées à la collection de schémas Indexes afin de prendre en charge de nouveaux types de données spatiales, flux de fichiers et colonnes fragmentées. Ces colonnes ne sont pas prises en charge dans les versions précédentes de .NET Framework et SQL Server.
ColumnName |
DataType |
Description |
---|---|---|
type_desc |
String |
Le type de l'index est l'un des suivants :
|
IndexColumns
ColumnName |
DataType |
Description |
---|---|---|
constraint_catalog |
String |
Catalogue auquel l'index appartient. |
constraint_schema |
String |
Schéma contenant l'index. |
constraint_name |
String |
Nom de l'index. |
table_catalog |
String |
Nom de la table auquel l'index est associé. |
table_schema |
String |
Schéma contenant la table à laquelle l'index est associé. |
table_name |
String |
Nom de table. |
column_name |
String |
Nom de la colonne à laquelle l'index est associé. |
ordinal_position |
Int32 |
Position du numéro de colonne. |
KeyType |
UInt16 |
Type d'objet. |
Procédures
Cette collection n'est disponible que dans SQL Server 2000 et les versions ultérieures.
ColumnName |
DataType |
Description |
---|---|---|
specific_catalog |
String |
Nom spécifique du catalogue. |
specific_schema |
String |
Nom spécifique du schéma. |
specific_name |
String |
Nom spécifique du catalogue. |
routine_catalog |
String |
Catalogue auquel appartient la procédure stockée. |
routine_schema |
String |
Schéma contenant la procédure stockée. |
routine_name |
String |
Nom de la procédure stockée. |
routine_type |
String |
Retourne PROCEDURE pour les procédures stockées et FUNCTION pour les fonctions. |
created |
DateTime |
Heure à laquelle la procédure a été créée. |
last_altered |
DateTime |
Heure à laquelle la procédure a été modifiée pour la dernière fois. |
Paramètres de procédure
ColumnName |
DataType |
Description |
---|---|---|
specific_catalog |
String |
Nom du catalogue de la procédure pour laquelle ceci est un paramètre. |
specific_schema |
String |
Schéma contenant la procédure dont ce paramètre fait partie. |
specific_name |
String |
Nom de la procédure dont ce paramètre fait partie. |
ordinal_position |
Int16 |
Position ordinale du paramètre commençant à 1. Pour la valeur de retour d'une procédure, cela donne 0. |
parameter_mode |
String |
Retourne IN pour un paramètre d'entrée, OUT pour un paramètre de sortie et INOUT pour un paramètre d'entrée/sortie. |
is_result |
String |
Retourne YES s'il indique que le résultat de la procédure est une fonction. Sinon, retourne NO. |
as_locator |
String |
Retourne YES s'il est déclaré comme pointeur. Sinon, retourne NO. |
parameter_name |
String |
Nom du paramètre. NULL si ceci correspond à la valeur de retour d'une fonction. |
data_type |
String |
Type de données fourni par le système. |
character_maximum_length |
Int32 |
Longueur maximale en caractères pour des types de données binaires ou sous forme de caractères. Sinon, retourne NULL. |
character_octet_length |
Int32 |
Longueur maximale en octets pour des types de données binaires ou sous forme de caractères. Sinon, retourne NULL. |
collation_catalog |
String |
Nom de catalogue du classement du paramètre. S'il ne s'agit pas de l'un des types de caractère, retourne NULL. |
collation_schema |
String |
Retourne toujours NULL. |
collation_name |
String |
Nom du classement du paramètre. S'il ne s'agit pas de l'un des types de caractère, retourne NULL. |
character_set_catalog |
String |
Nom de catalogue de l'ensemble de caractères du paramètre. S'il ne s'agit pas de l'un des types de caractère, retourne NULL. |
character_set_schema |
String |
Retourne toujours NULL. |
character_set_name |
String |
Nom du jeu de caractères du paramètre. S'il ne s'agit pas de l'un des types de caractère, retourne NULL. |
numeric_precision |
Byte |
Précision des données numériques approximatives, des données numériques exactes, des données entières ou des données monétaires. Sinon, retourne NULL. |
numeric_precision_radix |
Int16 |
Radical de précision des données numériques approximatives, des données numériques exactes, des données entières ou des données monétaires. Sinon, retourne NULL. |
numeric_scale |
Int32 |
Échelle des données numériques approximatives, des données numériques exactes, des données entières ou des données monétaires. Sinon, retourne NULL. |
datetime_precision |
Int16 |
Précision en secondes fractionnelles si le type de paramètre est datetime ou smalldatetime. Sinon, retourne NULL. |
interval_type |
String |
NULL. Réservé pour un usage futur de SQL Server. |
interval_precision |
Int16 |
NULL. Réservé pour un usage futur de SQL Server. |
Tables
ColumnName |
DataType |
Description |
---|---|---|
table_catalog |
String |
Catalogue de la table. |
table_schema |
String |
Schéma contenant la table. |
table_name |
String |
Nom de la table. |
table_type |
String |
Type de table. Peut être VIEW ou BASE TABLE. |
Colonnes
ColumnName |
DataType |
Description |
---|---|---|
table_catalog |
String |
Catalogue de la table. |
table_schema |
String |
Schéma contenant la table. |
table_name |
String |
Nom de la table. |
column_name |
String |
Nom de la colonne. |
ordinal_position |
Int16 |
Numéro d'identification de colonne. |
column_default |
String |
Valeur par défaut de la colonne |
is_nullable |
String |
Prise en charge des valeurs null dans la colonne. Si cette colonne autorise les valeurs NULL, elle retourne YES. Dans le cas contraire, elle retourne No. |
data_type |
String |
Type de données fourni par le système. |
character_maximum_length |
Int32 – Sql8, Int16 – Sql7 |
Longueur maximale en caractères pour les données binaires, sous forme de caractères, de texte ou d'image. Sinon, la valeur NULL est retournée. |
character_octet_length |
Int32 – SQL8, Int16 – Sql7 |
Longueur maximale en octets pour les données binaires, sous forme de caractères, de texte ou d'image. Sinon, la valeur NULL est retournée. |
numeric_precision |
Octet non signé |
Précision des données numériques approximatives, des données numériques exactes, des données entières ou des données monétaires. Sinon, la valeur NULL est retournée. |
numeric_precision_radix |
Int16 |
Radical de précision des données numériques approximatives, des données numériques exactes, des données entières ou des données monétaires. Sinon, la valeur NULL est retournée. |
numeric_scale |
Int32 |
Échelle des données numériques approximatives, des données numériques exactes, des données entières ou des données monétaires. Sinon, la valeur NULL est retournée. |
datetime_precision |
Int16 |
Code Subtype pour les types de données d'intervalle datetime et SQL-92. Pour les autres types de données, la valeur NULL est retournée. |
character_set_catalog |
String |
Retourne une liste maître indiquant la base de données dans laquelle l'ensemble de caractères se trouve et si la colonne contient des données de type caractères ou texte. Sinon, la valeur NULL est retournée. |
character_set_schema |
String |
Retourne toujours NULL. |
character_set_name |
String |
Retourne le nom unique du jeu de caractères si cette colonne contient des données de type caractère ou texte. Sinon, la valeur NULL est retournée. |
collation_catalog |
String |
Retourne une liste maître indiquant la base de données dans laquelle le classement est défini, si la colonne contient des données de type caractères ou texte. Sinon, cette colonne a une valeur NULL. |
Columns (SQL Server 2008)
Depuis .NET Framework version 3.5 SP1 et SQL Server 2008, les colonnes suivantes sont été ajoutées à la collection de schémas Columns afin de prendre en charge de nouveaux types de données spatiales, flux de fichiers et colonnes fragmentées. Ces colonnes ne sont pas prises en charge dans les versions précédentes de .NET Framework et SQL Server.
ColumnName |
DataType |
Description |
---|---|---|
IS_FILESTREAM |
String |
YES si la colonne présente l'attribut FILESTREAM. NO si la colonne ne présente pas l'attribut FILESTREAM. |
IS_SPARSE |
String |
YES s'il s'agit d'une colonne fragmentée. NO s'il ne s'agit pas d'une colonne fragmentée. |
IS_COLUMN_SET |
String |
YES s'il s'agit d'une colonne d'ensemble de colonnes. NO s'il ne s'agit pas d'une colonne d'ensemble de colonnes. |
AllColumns (SQL Server 2008)
Depuis .NET Framework version 3.5 SP1 et SQL Server 2008, la collection de schémas AllColumns a été ajoutée afin de permettre la prise en charge des colonnes fragmentées. AllColumns n'est pas prise en charge dans les versions précédentes de .NET Framework et SQL Server.
AllColumns présente les mêmes restrictions et schéma DataTable résultant que la collection de schémas Columns. La seule différence vient du fait que la collection AllColumns inclut des colonnes d'ensembles de colonnes qui ne sont pas incluses dans la collection de schémas Columns. Le tableau suivant décrit ces colonnes.
ColumnName |
DataType |
Description |
---|---|---|
table_catalog |
String |
Catalogue de la table. |
table_schema |
String |
Schéma contenant la table. |
table_name |
String |
Nom de la table. |
column_name |
String |
Nom de la colonne. |
ordinal_position |
Int16 |
Numéro d'identification de colonne. |
column_default |
String |
Valeur par défaut de la colonne |
is_nullable |
String |
Prise en charge des valeurs null dans la colonne. Si cette colonne autorise les valeurs NULL, elle retourne YES. Dans le cas contraire, elle retourne NO. |
data_type |
String |
Type de données fourni par le système. |
character_maximum_length |
Int32 pour SQL Server 2000 et versions ultérieures, Int16 pour SQL Server 7.0 |
Longueur maximale en caractères pour les données binaires, sous forme de caractères, de texte ou d'image. Sinon, la valeur NULL est retournée. |
character_octet_length |
Int32 pour SQL Server 2000 et versions ultérieures, Int16 pour SQL Server 7.0 |
Longueur maximale en octets pour les données binaires, sous forme de caractères, de texte ou d'image. Sinon, la valeur NULL est retournée. |
numeric_precision |
Octet non signé |
Précision des données numériques approximatives, des données numériques exactes, des données entières ou des données monétaires. Sinon, la valeur NULL est retournée. |
numeric_precision_radix |
Int16 |
Radical de précision des données numériques approximatives, des données numériques exactes, des données entières ou des données monétaires. Sinon, la valeur NULL est retournée. |
numeric_scale |
Int32 |
Échelle des données numériques approximatives, des données numériques exactes, des données entières ou des données monétaires. Sinon, la valeur NULL est retournée. |
datetime_precision |
Int16 |
Code Subtype pour les types de données d'intervalle datetime et SQL-92. Pour les autres types de données, la valeur NULL est retournée. |
character_set_catalog |
String |
Retourne une liste maître indiquant la base de données dans laquelle l'ensemble de caractères se trouve et si la colonne contient des données de type caractères ou texte. Sinon, la valeur NULL est retournée. |
character_set_schema |
String |
Retourne toujours NULL. |
character_set_name |
String |
Retourne le nom unique de l'ensemble de caractères si cette colonne contient des données de type caractère ou texte. Sinon, la valeur NULL est retournée. |
collation_catalog |
String |
Retourne une liste maître indiquant la base de données dans laquelle le classement est défini, si la colonne contient des données de type caractères ou texte. Sinon, cette colonne a une valeur NULL. |
IS_FILESTREAM |
String |
YES si la colonne présente l'attribut FILESTREAM. NO si la colonne ne présente pas l'attribut FILESTREAM. |
IS_SPARSE |
String |
YES s'il s'agit d'une colonne fragmentée. NO s'il ne s'agit pas d'une colonne fragmentée. |
IS_COLUMN_SET |
String |
YES s'il s'agit d'une colonne d'ensemble de colonnes. NO s'il ne s'agit pas d'une colonne d'ensemble de colonnes. |
ColumnSetColumns (SQL Server 2008)
Depuis .NET Framework version 3.5 SP1 et SQL Server 2008, la collection de schémas ColumnSetColumns a été ajoutée afin de permettre la prise en charge des colonnes fragmentées. ColumnSetColumns n'est pas prise en charge dans les versions précédentes de .NET Framework et SQL Server. La collection de schémas ColumnSetColumns retourne le schéma de toutes les colonnes dans un ensemble de colonnes. Le tableau suivant décrit ces colonnes.
ColumnName |
DataType |
Description |
---|---|---|
table_catalog |
String |
Catalogue de la table. |
table_schema |
String |
Schéma contenant la table. |
table_name |
String |
Nom de la table. |
column_name |
String |
Nom de la colonne. |
ordinal_position |
Int16 |
Numéro d'identification de colonne. |
column_default |
String |
Valeur par défaut de la colonne |
is_nullable |
String |
Prise en charge des valeurs null dans la colonne. Si cette colonne autorise les valeurs NULL, elle retourne YES. Dans le cas contraire, elle retourne NO. |
data_type |
String |
Type de données fourni par le système. |
character_maximum_length |
Int32 pour SQL Server 2000 et versions ultérieures, Int16 pour SQL Server 7.0 |
Longueur maximale en caractères pour les données binaires, sous forme de caractères, de texte ou d'image. Sinon, la valeur NULL est retournée. |
character_octet_length |
Int32 pour SQL Server 2000 et versions ultérieures, Int16 pour SQL Server 7.0 |
Longueur maximale en octets pour les données binaires, sous forme de caractères, de texte ou d'image. Sinon, la valeur NULL est retournée. |
numeric_precision |
Octet non signé |
Précision des données numériques approximatives, des données numériques exactes, des données entières ou des données monétaires. Sinon, la valeur NULL est retournée. |
numeric_precision_radix |
Int16 |
Radical de précision des données numériques approximatives, des données numériques exactes, des données entières ou des données monétaires. Sinon, la valeur NULL est retournée. |
numeric_scale |
Int32 |
Échelle des données numériques approximatives, des données numériques exactes, des données entières ou des données monétaires. Sinon, la valeur NULL est retournée. |
datetime_precision |
Int16 |
Code Subtype pour les types de données d'intervalle datetime et SQL-92. Pour les autres types de données, la valeur NULL est retournée. |
character_set_catalog |
String |
Retourne une liste maître indiquant la base de données dans laquelle l'ensemble de caractères se trouve et si la colonne contient des données de type caractères ou texte. Sinon, la valeur NULL est retournée. |
character_set_schema |
String |
Retourne toujours NULL. |
character_set_name |
String |
Retourne le nom unique de l'ensemble de caractères si cette colonne contient des données de type caractère ou texte. Sinon, la valeur NULL est retournée. |
collation_catalog |
String |
Retourne une liste maître indiquant la base de données dans laquelle le classement est défini, si la colonne contient des données de type caractères ou texte. Sinon, cette colonne a une valeur NULL. |
IS_FILESTREAM |
String |
YES si la colonne présente l'attribut FILESTREAM. NO si la colonne ne présente pas l'attribut FILESTREAM. |
IS_SPARSE |
String |
YES s'il s'agit d'une colonne fragmentée. NO s'il ne s'agit pas d'une colonne fragmentée. |
IS_COLUMN_SET |
String |
YES s'il s'agit d'une colonne d'ensemble de colonnes. NO s'il ne s'agit pas d'une colonne d'ensemble de colonnes. |
Utilisateurs
ColumnName |
DataType |
Description |
---|---|---|
uid |
Int16 |
ID d'utilisateur, unique dans cette base de données. 1 est le propriétaire de base de données. |
name |
String |
Nom d'utilisateur ou nom de groupe, unique dans cette base de données. |
createdate |
DateTime |
Date d'ajout du compte. |
updatedate |
DateTime |
Date à laquelle le compte a été modifié pour la dernière fois. |
Vues
Cette collection n'est disponible que dans SQL Server 2000 et les versions ultérieures.
ColumnName |
DataType |
Description |
---|---|---|
table_catalog |
String |
Catalogue de la vue. |
table_schema |
String |
Schéma contenant la vue. |
table_name |
String |
Nom de la vue. |
check_option |
String |
Type de WITH CHECK OPTION. Est CASCADE si la vue originale a été créée à l'aide de WITH CHECK OPTION. Dans le cas contraire, retourne NONE. |
is_updatable |
String |
Indique si la vue peut être mise à jour. Retourne toujours NO. |
ViewColumns
ColumnName |
DataType |
Description |
---|---|---|
view_catalog |
String |
Catalogue de la vue. |
view_schema |
String |
Schéma contenant la vue. |
view_name |
String |
Nom de la vue. |
table_catalog |
String |
Catalogue de la table associée à cette vue. |
table_schema |
String |
Schéma contenant la table associée à cette vue. |
table_name |
String |
Nom de la table associée à cette vue. Table de base. |
column_name |
String |
Nom de la colonne. |
UserDefinedTypes
Cette collection n'est disponible que dans SQL Server 2005 et les versions ultérieures.
ColumnName |
DataType |
Description |
---|---|---|
assembly_name |
String |
Nom du fichier pour l'assembly. |
UDT_name |
String |
Nom de la classe pour l'assembly. |
version_major |
Object |
Numéro de version principale. |
version_minor |
Object |
Numéro de version secondaire. |
version_build |
Object |
Numéro de build. |
version_revision |
Object |
Numéro de révision. |
Culture_info |
Object |
Informations de culture associées à cet UDT. |
Public_key |
Object |
Clé publique utilisée par cet assembly. |
Is_fixed_length |
Boolean |
Indique si la longueur du type est toujours identique à max_length. |
max_length |
Int16 |
Longueur maximale du type en octets. |
permission_set_desc |
String |
Nom convivial de l'ensemble d'autorisations/niveau de sécurité pour l'assembly. |
create_date |
DateTime |
Date à laquelle l'assembly a été créé/enregistré. |
Voir aussi
Autres ressources
Récupération d'informations de schéma de base de données (ADO.NET)