Update Access

Résolu
ren7530 Messages postés 7 Date d'inscription mardi 1 mai 2007 Statut Membre Dernière intervention 31 août 2007 - 30 août 2007 à 08:30
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 - 31 août 2007 à 11:47
Besoin Urgent d'aide
Je suis débutant et très nul !!

Ajouter et Suprimer dans la base pas de problème mais pour la modif toujour la même chose
 "Aucune valeur donnée pour un ou plusieurs des paramètres requis"

voici la ligne :    dbsBase.Execute ("UPDATE  Produits SET RéfProd '" & UCase(Trim(Replace(TextRéf.Text, "'", "''"))) & "',  DésigProd '" & Trim(Replace(TextDésig.Text, "'", "''")) & "', RenseigrProd = '" & Trim(Replace(TextDescrip.Text, "'", "''")) & "', NomFour = " & UCase(Trim(Replace(TextfourModif.Text, "'", "''"))) & " WHERE idProd = " & Val(produits.Label24.Caption) & ";")

Si quelqu'un pouvait m'aider ce serait sympa

20 réponses

cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
31 août 2007 à 11:14
Salut,

Aprés analyse..lol...Voici ta requête modidiée et qui fonctionne en modification(en rouge) :

Dim SQL As String
SQL = "UPDATE  Produits SET "SQL SQL & "RefProd '" & UCase(Trim(Replace(TextRef.Text, "'", "''"))) & "',  "SQL SQL & "DesigProd '" & Trim(Replace(TextDesig.Text, "'", "''")) & "', "SQL SQL & "RenseigrProd '" & Trim(Replace(TextDescrip.Text, "'", "''")) & "', "SQL SQL & "NomFour '" & Replace(TextfourModif.Text, "'", "''") & "' "SQL SQL & "WHERE idProd " & CLng(Textid.Text) & ";"
dbsBase.Execute (SQL)


A+
Exploreur

 Linux a un noyau, Windows un pépin


 
3
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
30 août 2007 à 09:42
C'est donc une erreur SQL ??
Au fait : utilise plutôt ça

Dim SQL As String
SQL = "UPDATE  Produits SET "SQL SQL & "RéfProd '" & UCase(Trim(Replace(TextRéf.Text, "'", "''"))) & "',  "SQL SQL & "DésigProd '" & Trim(Replace(TextDésig.Text, "'", "''")) & "', "SQL SQL & "RenseigrProd '" & Trim(Replace(TextDescrip.Text, "'", "''")) & "', "SQL SQL & "NomFour " & UCase(Trim(Replace(TextfourModif.Text, "'", "''"))) & " "SQL SQL & "WHERE idProd " & Val(produits.Label24.Caption) & ";"
dbsBase.Execute SQL, ----

C'est VRAIMENT plus lisible !!
_______________________________________________________________________
VB.NETis good ...VB6is better <f></f>
0
ren7530 Messages postés 7 Date d'inscription mardi 1 mai 2007 Statut Membre Dernière intervention 31 août 2007
30 août 2007 à 10:10
cé clair cé plus lisible
d'ailleur je vais revoir tout ça dans ce sens

Mais même comme cà mon problème persite
Merci tout de même pour ton aide
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
30 août 2007 à 10:41
Salut,

De même, je fairais comme cela aussi :

Dim Sql As String
Sql "UPDATE Produits SET RéfProd '" & UCase(Replace(TextRéf.Text, "'", "''")) & "', " & _
      "DésigProd = '" & Replace(TextDésig.Text, "'", "''") & "'," & _
      "RenseigrProd = '" & Replace(TextDescrip.Text, "'", "''") & "', " & _
      "NomFour = " & UCase(Replace(TextfourModif.Text, "'", "''")) & _
      "WHERE idProd = " & Val(produits.Label24.Caption) & ""

dbsBase.Execute, Sql

Par contre ton erreur me fait penser à une chose :

Est-ce que dans ta requête tous les champs mentionés, sont représentés dans ta table produits ?

Est-ce que dans "produits.Label24.Caption" tu as bien une valeur ? Fait un MsgBox jsute avant de lancer ta requête pour être sur.

Un conseil que je tiens d'un Admin, ne met pas d'accens sur les noms de tes tables ainsi que sur les contrôle..

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lolokun Messages postés 1241 Date d'inscription mardi 10 octobre 2006 Statut Membre Dernière intervention 27 août 2013 7
30 août 2007 à 10:43
Salut,

Vérifie qu'il ne reste pas des champs qui ne peuvent pas être null dans ta base ou que tes texboxt ne sont pas vides.
Et pourquoi faire un replace des "?
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
30 août 2007 à 10:48
Salut,

C'est pour les apostrophes dans la chaine de texte...

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
lolokun Messages postés 1241 Date d'inscription mardi 10 octobre 2006 Statut Membre Dernière intervention 27 août 2013 7
30 août 2007 à 10:50
Ha oui pardon je n'avais pas vu qu'il y avait un ' entre les deux guillemets
0
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
30 août 2007 à 10:53
En d'autres termes, contre l'injection.
Au fait : voila un code plus petit :

Private Sub Form_Load()
Dim SQL As String
SQL = "UPDATE  Produits SET "SQL SQL & "RéfProd '" & UCase(Trim(Pure(TextRéf.Text))) & "',  "SQL SQL & "DésigProd '" & Trim(Pure(TextDésig.Text)) & "', "SQL SQL & "RenseigrProd '" & Trim(Pure(TextDescrip.Text)) & "', "SQL SQL & "NomFour " & UCase(Trim(Pure(TextfourModif.Text))) & " "SQL SQL & "WHERE idProd " & Val(produits.Label24.Caption) & ";"
MsgBox SQL
dbsBase.Execute SQL
End Sub<hr />
Public Function Pure(S As String) As String
Pure = Replace(S, "'", "''")
End Function , ----

_______________________________________________________________________
VB.NETis good ...VB6is better <f></f>
0
ren7530 Messages postés 7 Date d'inscription mardi 1 mai 2007 Statut Membre Dernière intervention 31 août 2007
30 août 2007 à 12:18
J'ai appliquer toutes vos sugestions pas d' accents sur les noms de table dans la base et sur les controles, présence des champs dans la base, et les toutes les valeurs sont présentent sur les controles

Hélas j'ai toujours la même erreur
 "Aucune valeur donnée pour un ou plusieurs des paramètres requis"

Merci a tout le monde
0
lolokun Messages postés 1241 Date d'inscription mardi 10 octobre 2006 Statut Membre Dernière intervention 27 août 2013 7
30 août 2007 à 13:00
Le msgbox de ta requete avant de l'exécuter est correcte?
Mais dans ta base as-tu des champs que tu ne remplis pas avec tes textbox?Des champs qui ne peuvent pas avoir de valeur NULL qu'il faudrait donc renseigner?
0
ren7530 Messages postés 7 Date d'inscription mardi 1 mai 2007 Statut Membre Dernière intervention 31 août 2007
30 août 2007 à 14:11
msbox avant requete correcte
Tous les champs de la base sont renseignés avec les textbox
et tous les champs de la base peuvent avoir une valeur Null sauf idProd étant la clée primaire en N° auto
0
lolokun Messages postés 1241 Date d'inscription mardi 10 octobre 2006 Statut Membre Dernière intervention 27 août 2013 7
30 août 2007 à 14:18
Le produits.Label24.Caption  contient quoi comme valeur?
tu as récupéré la valeur de la ligne sélectionnée à modifier?
0
ren7530 Messages postés 7 Date d'inscription mardi 1 mai 2007 Statut Membre Dernière intervention 31 août 2007
30 août 2007 à 14:28
Le produits.Label24.Caption  contient idProd qui est la valeur de la clée primaire
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
30 août 2007 à 14:52
Salut,

Je ne comprend pas pourquoi tu fais alors un "val" sur produits.Label24.Caption ?

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
lolokun Messages postés 1241 Date d'inscription mardi 10 octobre 2006 Statut Membre Dernière intervention 27 août 2013 7
30 août 2007 à 15:29
Il contient idProd mais l'as tu transformé en chaine de caractères avant de le mettre dans le caption de ton label?
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
30 août 2007 à 15:45
Re,

Lolokun >> Pas besoin, car dans la table la clé primaire est numérique....

Je persite à dire, que dans ta requête, il faut qu'il y est tous les champs représentés et que ceux-ci accépte dans ta base un type null.

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
30 août 2007 à 17:24
Salut,
c' est poblement ton champ Fournisseur qui pose problème.
Si ta table produits est liée à une table forunisseur.
Il n' est pas bien orthographié comme il doit l' être dans cette dernière.
Surtout que tu le transforme avec UCase et Trim.

<hr />I LIKE TO BE HERE WHEN I CAN
<hr />
0
ren7530 Messages postés 7 Date d'inscription mardi 1 mai 2007 Statut Membre Dernière intervention 31 août 2007
31 août 2007 à 08:33
C'est juste pas besoin de  "val" sur produits.Label24.Caption petite erreur mais qui je pense n'est pas la cause du problème
A force de triturer ces quelques lignes dans tous les sens certaines petites choses peuvent méchappées

En ce qui concerne la liaison de table, il n'y a pour l'intant aucune laison entre Produits et Fournisseurs


En ce qui concerne les champs, ils sont tous valide


Pour la base :


Null Interdit = oui
Chaine vide autorisée = oui
Indexé = non


La je suis complètement a la rue, d'autant plus que Suprimer et Ajouter aucun problème et qu'il faut absoluement que je règle ce souci pour continuer dans ce PROG
Update va me servir pour gérer le reste, Fournisseurs, commandes, stock, les Entrées/Sorties et bien sur Produits
En tout cas MERCI a tout le monde pour votre aide.Ca fait plaisir de voir qu'on est pas seul au monde dans ce genre d'aventure
0
ren7530 Messages postés 7 Date d'inscription mardi 1 mai 2007 Statut Membre Dernière intervention 31 août 2007
31 août 2007 à 11:45
Super
Nickel !

Un Grand MERCI a Exploreur pour ton aide tu m'as sauvé la vie.
Je vai pouvoir essayé '(j'ai bien dit essayé) de continuer ce petit bout de chose
Et j'espère retrouvé (ou te retrouvé) une personne aussi dévoué au cas ou j'aurai un autre pépin
Désolé d'avoir pris un peu de ton temps
A+ tout le monde et bonne continuation
Très Cordialement
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
31 août 2007 à 11:47
De rien...

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
Rejoignez-nous