begin process at 2012 02 14 12:35:00
  Trouver un code source :
 
dans
 
Accueil > Forum > 

VB.NET et VB 2005

 > 

Base de données

 > 

ADO.NET

 > 

Probleme de mise à jour dans base de données


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Probleme de mise à jour dans base de données

jeudi 28 mai 2009 à 10:23:25 | Probleme de mise à jour dans base de données

jubourbon

Bonjour,

J'essaye actuelement de réaliser un programme pour consulter, mettre à jour des informations dans une base de données SQL 2000.
Pour la consultation pas de pb, je recupere les infos, mais pour les mise à jour, j'ai un probleme, ca ne fonctionne pas et sa plante.
Voici l'erreur que Visual STudio me renvoi: La génération SQL dynamique de UpdateCommand n'est pas prise en charge pour un SelectCommand qui ne retourne pas des informations de colonne clé.

Je ne comprend pas bien ce qui ne va pas.

Voici mon code, en l'etat il ne sert à rien, c'est surtout pour tester les objet et leur fonction:

Dim sConnectionStringed = "XXXXX"
Dim Element As DataRow
Dim queryString AsString = "SELECT * from Adaptors"
Using Connection AsNew SqlClient.SqlConnection(sConnectionStringed)
   Dim Adapter AsNew SqlClient.SqlDataAdapter()
   Dim Marow As DataRow
   Dim ObjetCommandBuilder As SqlClient.SqlCommandBuilder
   
Adapter.SelectCommand = New SqlClient.SqlCommand(queryString, Connection)
   Adapter.Fill(DataSetInfo, "Adapter"
   ForEach Element In DataSetInfo.Tables("Adapter").Rows
      ComboBox1.Items.Add(Element(0))
      ComboBox3.Items.Add(Element(0))
      If mavar = "Adapter1"Then
         Marow = Element
         Element(0) = "Adapter01"
         ObjetCommandBuilder = New SqlClient.SqlCommandBuilder(Adapter)
         Adapter.Update(DataSetInfo, "Adapter")
      EndIf
   Next
   DataSetInfo.Clear()
   Adapter.Fill(DataSetInfo, "Adapter")
   
Adapter = Nothing
EndUsing

D'avance merci pour vos conseils.

jeudi 28 mai 2009 à 10:36:20 | Re : Probleme de mise à jour dans base de données

jubourbon

Il y a une erreur dans le code que j'ai copié, mavar est en fait Element(0), mais ca ne change rien au probleme.
jeudi 28 mai 2009 à 12:51:26 | Re : Probleme de mise à jour dans base de données

Mayzz

Membre Club
Réponse acceptée !
Bonjour,

"La génération SQL dynamique de UpdateCommand n'est pas prise en charge pour un SelectCommand qui ne retourne pas des informations de colonne clé"

Je ne me suis pas bien penché sur ton code, mais au niveau du message d'erreur il semblerait que la commande UPDATE, ne soit pas prise en compte car la table retourné par ta commande SELECT ne comporte pas de clé primaire. de ce faite la mise à jour d'un ROW, ne peut pas se faire car le SqlDataAdapter ne peux pas identifié le ROW qu'il faut mettre à jour.

Exemple :

Si mon ROW1  possede les valeur suivantes :

ID = 0 ' Clé primaire
Nom = Taratara

et que je veux le remplacer par le ROW2:

ID = 1
Nom = Tartempion

La requêtre UPDATE va recherché dans la table le ROW à mettre à jour en identifiant celui ci par son ID. Or si la table ne compote pas de clé primaire, il faut présiser une clause WHERE, ainsi, la rêquête mettera à jour tous les ROW selon cette clause.

Après je pense que je peu me tromper mais je te conseille de définir une colonne de ta table en tant que clé primaire.

@+ Mayzz


Cette discussion est classée dans : jour, element, adapter, sqlclient, datasetinfo


Répondre à ce message

Sujets en rapport avec ce message

supp [ par pascot ] bonne jour a tout le monde ,mes amies j'ai un problem en  ce qui conserne la suppression d'enregistrement a ce niveau 'cration et excution du mise à jour d'un classeur [ par epaminondas ] Bonjour, Je suis sur un proje Mise a jour de combobox en cascade [ par jmichl ] Bonjour,J'ai créé un formulaire sous access 2003 qui gère une base de données d'échantillon de cailloux. Ces échantillons sont localisés géographiquem Problème avec FillSchema [ par johann36 ] Bonjour à tous,J'essaie tant bien que mal de me sortir de ce pétrin mais rien à y faire c'est la galère. Je lutte depuis maintenant 3 semaines sur un Import Excel vers Access avec mise à jour des champs existant [ par Sprsrini ] Bonjour,Je débute actuellement sous Access et VBA.J'ai actuellement un fichier Excel avec une seule feuille. Cette feuille contient un tableau de donn mis a jour d''un datagrid [ par karima0001 ] bonjour tout le monde, j'ai un probleme de mise a jour d'un datagrid, je crois ke le blem est du du rassembelement de plusieurs infos de plusieurs tab Mise à jour automatiquement d'un table adapter sans passer par Update [ par Ludiv60 ] Bonjour J'aimerais savoir s'il est possible de mettre à jour automatiquement un tableadapter sans passer par un update.Je m'explique, j'ai une form av remplir un combobox [ par proprince ] bnjr, je veux créer un combobox qui contient 2 champs Num de jour et le jour exempl : 1 Lundi 2 Mardi ect Remarque : combobox qui contient 2 c Enlever un jour dans une date [ par l0quito ] Bonjour a tous!voila mon problèmeJ'ai une variable de type DateTime est j'aimerai, si possible lui retirer un jour.Comme quand on rajoute V_DateTime.A Download ftp selon listbox [ par riderfun ] Bonjour à tous j'ai besoin de votre aide en fait dans le cadre de mes projets pour mon BTS je dois créer un logiciel en VB.Net il permet après une sél


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,061 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales