IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

[VS2005][VB.NET] Index uniques base ACCESS qui ne remontent pas comme contrainst


Sujet :

VB.NET

  1. #1
    Membre chevronné
    Avatar de olsimare
    Inscrit en
    Décembre 2006
    Messages
    1 175
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 175
    Points : 1 767
    Points
    1 767
    Par défaut [VS2005][VB.NET] Index uniques base ACCESS qui ne remontent pas comme contrainst
    Bonjour.

    Je cherche à récupérer TOUTES les contraintes positionnées sur une table ACCESS que j'accéde à partir d'un dataset et une datatable de ce dataset.

    Quand j'utilise monDataset.Tables(0).Constraints, cela me donne effectivement la contrainte d'unicité sur la clé primaire mais pas celles sur les colonnes avec index unique !!!

    Exemple : j'ai un colonne ID qui est ma clé primaire et un colonne nom qui est un index unique, seul ID remonte dans les contraintes (c'est dingue !).

    Je ne voudrai pas retomber dans le DAO ou tout cela marchait trés bien... alors HELP !!!!

    Sans réponse je me remets au DAO !!!! ;-)

    Bon en creusant dans la doc :
    DataAdapter.FillSchema, méthode (DataSet, SchemaType)

    Il s'avére que le FillSchema (que j'utilise systématiquement) ne remonte les index uniques qu'en absence de clé primaire ! C'est pas très malin mais c'est comme ça !

    Cdt.
    Bon à savoir : la touche F1 ne sert pas à commander des places pour le grand prix de Belgique.

  2. #2
    Membre chevronné
    Avatar de olsimare
    Inscrit en
    Décembre 2006
    Messages
    1 175
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 175
    Points : 1 767
    Points
    1 767
    Par défaut
    Bonjour.

    Même le OleDbDataReader.GetSchemaTable(CommandBehavior.KeyInfo) ne raméne pas les index uniques. Seul la clé primaire remonte !

    Au final, seul moyen trouvé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
            Dim dtSchemaTable As DataTable = _
                    maConnection.GetOleDbSchemaTable(OleDbSchemaGuid.Indexes, _
                    New Object() {Nothing, Nothing, Nothing, _
                        Nothing, NomDeMaTable})
    C'est bien triste...

    Cdt.
    Bon à savoir : la touche F1 ne sert pas à commander des places pour le grand prix de Belgique.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Base ACCESS qui se multiplie ?
    Par NATOU2 dans le forum Access
    Réponses: 9
    Dernier message: 18/11/2011, 10h12
  2. Connection a base access qui ne marche pas
    Par harisman87 dans le forum C#
    Réponses: 9
    Dernier message: 12/08/2010, 11h22
  3. Insert dans base Access qui ne se fait pas, mais sans erreur
    Par muppetshow dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 28/01/2010, 22h37
  4. Créer connexion entre Vb.net et une base Access
    Par fixfix dans le forum Accès aux données
    Réponses: 9
    Dernier message: 05/12/2007, 11h07
  5. [VB.NET] explorateur de base access
    Par momostreet dans le forum Accès aux données
    Réponses: 1
    Dernier message: 20/03/2007, 19h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo