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 :

parametrer un TableAdapter


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    consultant BTP
    Inscrit en
    Février 2012
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : consultant BTP
    Secteur : Bâtiment

    Informations forums :
    Inscription : Février 2012
    Messages : 51
    Par défaut parametrer un TableAdapter
    Bonjour,
    Apres plusieurs recherches je deviens completement fou pour trouver une solution.

    J'a une base de donnée acess en reseau (repartie) que je souhaite mettre a jour via un windows form. (étant sous visual basic express 2010)
    Je crée une connection mon tableadater je fait glisser mon dataset sur mon form pour créer mes sources et mon databindingnavigator je lance le tout je peux ajouter des nouvelle lignes en supprimer en modifier et en enregistrer, pourtant dans certain un message d'erreur apparait :

    petit code du controle enregistrer
    -------------------
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Data_PrixBindingNavigatorSaveItem_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Data_PrixBindingNavigatorSaveItem.Click
            Me.Validate()
            Me.Data_PrixBindingSource.EndEdit()
            Me.TableAdapterManager.UpdateAll(Me.Base_de_données1DataSet)    End Sub
    -------------------


    Violation de l'accès concurrentiel : DeleteCommand a affecté 0 des enregistrements 1 attendus.
    ou bien
    Violation de l'accès concurrentiel : UpdateCommand a affecté 0 des enregistrements 1 attendus.
    Dans ma base la première colonne est definie en tant que clé primaire et autoincrémentation de 1.

    J'ai essayer de parametre les requetes du tabladapter moi meme mais pour certaine colonne et dans les requetes Update Delete Isert quan je veux remplacer le ? par @prix pour la colonne prix un message me dis : Erreur de type de données dans l'expression.

    Je n'arrive plus a trouver mon erreur

  2. #2
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    Bonjour,
    Montre nous le contenu de :
    - Me.TableAdapterManager.SelectCommand.Text,
    - Me.TableAdapterManager.UpdateCommand.Text,
    - Me.TableAdapterManager.InsertCommand.Text,
    - Me.TableAdapterManager.DeleteCommand.Text.

    Pour access, les X paramètres des commandes paramétrées remplacent les X "?" de la commande.

    Pour l'InsertCommand, il ne faut pas ajouter le champs autoincrement dans la lmiste des champs , mais le récupérer après l'insert. Le code ci-dessous est en C#, mais facilie à traduire en Vb.net.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    string MonChampAutoIncrement = "ID" ;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    string MyBasicInsertCommand = ... // Commande insert sans champ ID 
    Me.TableAdapterManager.InsertCommand = MyBasicInsertCommand+ " " + MonChampAutoIncrement + " = SCOPEIDENTITY()" ;
    Me.TableAdapterManager.MissingSchemaAction = MissingSchemaAction.AddWithKey;

  3. #3
    Membre averti
    Homme Profil pro
    consultant BTP
    Inscrit en
    Février 2012
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : consultant BTP
    Secteur : Bâtiment

    Informations forums :
    Inscription : Février 2012
    Messages : 51
    Par défaut
    bonjour,
    Voila pour les différentes commandes :
    Select :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT      Data_Prix.* FROM         Data_Prix
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT      ID, code_UP, Désignation, .....(autre colonnes) FROM         Data_Prix
    Avec la clé primaire sur ID autoincrement sur true, autoincrementseed à 1, autoincrementstep à 1, unique sur true.

    Pour la commande delete
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DELETE FROM Data_Prix WHERE     (ID = ?)
    Pour la commande Update :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    UPDATE    Data_Prix
    SET              Code_UP = ?, Nom_UP = ?, Code_article = ?,  Désignation = ?, Fournisseur = ?, [Livraison_extérieur] = ?,   Statut = ?, Secteur = ?, Observation = ?, date_MAJ = ?, Prix = ?  ......
    WHERE     (ID = ?)
    Pour la commande insert :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    INSERT INTO Data_Prix
                          (Code_UP, Nom_UP, Code_article,  Désignation, Fournisseur, [Livraison_extérieur],  Statut, Secteur, Observation, 
                          date_MAJ, Prix)
    VALUES     (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
    je fait la prog en VB et non C++
    merci pour l'aide

Discussions similaires

  1. Réponses: 3
    Dernier message: 13/06/2008, 20h29
  2. parametrer le remplissage d'un tableadapter
    Par tikismoke dans le forum VB.NET
    Réponses: 2
    Dernier message: 05/03/2007, 20h06
  3. TableAdapter requete avec parametre multiple.
    Par isambert dans le forum Accès aux données
    Réponses: 1
    Dernier message: 13/01/2007, 00h11
  4. [VB.Net 2.0] Comment passer en paramètre un TableAdapter ?
    Par Thierryx dans le forum Accès aux données
    Réponses: 1
    Dernier message: 25/08/2006, 15h27
  5. transmision de tableau en parametre
    Par Horus dans le forum C++Builder
    Réponses: 3
    Dernier message: 16/05/2002, 11h15

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