Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Pourquoi via la collection Columns d'un DataTable l'info si PrimaryKey n'est pas accessible ?

1 réponse
Avatar
Jean-Noel
Bonjour,

Je débute avec VB.NET et ADO.NET.

J'aimerai parcourir les colonnes d'une table d'un DataSet, et identifier
celle(s) qui est utilisée(s) en tant que PrimaryKey.
Le DataSet est connecté Oledb sur une base Access.

Quand j'utilise l'objet DataSet créé dans l'environnement VS2005, pas de
problème :

Dim Colonnes( ) As DataColumn
Colonnes = DS.Tables(0).PrimaryKey

La collection Colonnes, me fournit bien la(les) column qui constituent la
PrimaryKey,
et je peux par exemple extraire le nom de la colonne avec
Colonnes(0).ColumnName

Si je crée l'objet DataSet dans le code et le remplit exactement de la même
manière
que précédemment, la collection Colonnes est vide.

Quelqu'un peut-il m'expliquer pourquoi ?

Merci.

1 réponse

Avatar
Jean-Noel
C'est bon j'ai trouvé :
Il faut avec le DataAdapter, charger le "Schema" de la table comme suit :

DAdapt.Fill (DS,"NomDeLaTable")
'Remplissage des données de la table
DAdapt.FillSchema (DS.Tables("NomDeLaTable"), SchemaType.Source)
'Remplissage du schéma de la table


"Jean-Noel" <jean-noel(Supp)@wanadoo.fr> a écrit dans le message de news:

Bonjour,

Je débute avec VB.NET et ADO.NET.

J'aimerai parcourir les colonnes d'une table d'un DataSet, et identifier
celle(s) qui est utilisée(s) en tant que PrimaryKey.
Le DataSet est connecté Oledb sur une base Access.

Quand j'utilise l'objet DataSet créé dans l'environnement VS2005, pas de
problème :

Dim Colonnes( ) As DataColumn
Colonnes = DS.Tables(0).PrimaryKey

La collection Colonnes, me fournit bien la(les) column qui constituent la
PrimaryKey,
et je peux par exemple extraire le nom de la colonne avec
Colonnes(0).ColumnName

Si je crée l'objet DataSet dans le code et le remplit exactement de la
même manière
que précédemment, la collection Colonnes est vide.

Quelqu'un peut-il m'expliquer pourquoi ?

Merci.