begin process at 2012 02 15 01:28:51
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

J'AI BESOIN D'AIDE !!!! :)

 > 

erreur! UPDATE !!! Nouvel enregistrement dans une table !


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

erreur! UPDATE !!! Nouvel enregistrement dans une table !

lundi 4 juillet 2005 à 09:23:04 | erreur! UPDATE !!! Nouvel enregistrement dans une table !

ktypao

Salut,
je débute dans la prog alors soyez indulgent. Merci.
Je développe une appli en vb 6 et j'ai une base mysql.
Je dois ici inserer un nouvel enregistrement dans ma table "location".
Le problème vient apparemment de Update qu'il me surligne.
Et j'ai en retour l'erreur: " Longueur de chaine ou de mémoire tampon non valide".

Je ne comprend pas cette erreur. Merci pour votre aide.
(Il me reste 2 semaines avant soutenance de stage!!!!)

Voici le bout de code foireux:

Private Sub Cmd_Valider_Click()

Dim str As String
Set cn = New ADODB.Connection
str = "DRIVER={MySQL ODBC 3.51 Driver};" & "SERVER=" & "localhost" & ";DATABASE=" & "MaBase" & ";" & "UID=" & "root" & ";PWD=" & ";OPTION="
cn.Open str

Set rs = New ADODB.Recordset
rs.CursorType = adOpenKeyset
rs.LockType = adLockOptimistic
rs.Open "location", cn, , , adCmdTable

rs.AddNew
rs!Id_en = id_E
rs!Id_cn = id_C
rs!Date_s = ds
rs!Date_r = dr
rs!Acc_l = acc
rs!Adr = adr
rs.Update
   
MsgBox "Nouvelle location correctement enregistrée", vbOKOnly, "Message"
Form_NouvelleLoc.Hide

lundi 4 juillet 2005 à 09:37:47 | Re : erreur! UPDATE !!! Nouvel enregistrement dans une table !

KC62

Salut,

je suis pas sur de moi mais tu peux toujours essayé sa mange pas de pain !
Set rs = New ADODB.Recordset
rs.CursorType = adOpenKeyset
rs.LockType = adLockOptimistic
rs.Open "location", cn, , , adCmdTable
Sur ce code  essaye de remplace  adLockOptimistic par quelque chose du genre adOpenDynaset .
Tu pourras voir en appuaynt sur [Control] + [Espaces] toutes les possibilités. L'idée c'est douvrir le recordset de manière a pouvoir enregistré dessus.

voila bonne chance a toi !

KC62
On a pas toutes les solutions de tous les probleme mais chaque probleme à ses solutions ...
lundi 4 juillet 2005 à 10:27:37 | Re : erreur! UPDATE !!! Nouvel enregistrement dans une table !

frop01

Membre Club
L'erreur vient les valeurs affectées au champs;

vérifies leur types ainsi que leur longeur

ex
si Dats_s est de type date dans la base
alors il faut
rs!Dates=CDate(ds)

@+

lundi 4 juillet 2005 à 11:07:16 | Re : erreur! UPDATE !!! Nouvel enregistrement dans une table !

ktypao

Merci!

Le problème vient apparemment de là, j'ai mis CDate() pour les dates, en revanche il reste encore un problème pour un autre champ qui est en VARCHAR dans ma base et que j'ai mis en STRING dans l'appli. En fait je la récupère dans un textBox ( adr = text_adr.text ) puis je l'affecte au champ de la base correspondant ( rs!adresse = adr).

Pourquoi ça ne marche pas?
Il me renvoie: "Une opération OLE-DB a généré des erreurs. Vérifiez chaque valeur d'état OLE-DB disponibles. Aucun travail n'a été effectué. "

lundi 4 juillet 2005 à 11:32:39 | Re : erreur! UPDATE !!! Nouvel enregistrement dans une table !

dan80



ou essaye ca :

Private Sub Cmd_Valider_Click()

Dim str As String
Set cn = New ADODB.Connection
str = "DRIVER={MySQL ODBC 3.51 Driver};" & "SERVER=" & "localhost" & ";DATABASE=" & "MaBase" & ";" & "UID=" & "root" & ";PWD=" & ";OPTION="
cn.Open str


dim sqlstring as string
sqlstring="Insert into Location(Id-En, Id_cn, Date_s, Date_r, Acc_l, Adr) values ( ' " & id_E & " ',....)
cn.Execute sqlstring

affectation des variables, syntaxe:
' " & (string) & " '
" & (integer) & "
# " & (date) & " #

fais moi signe si tu réussi!       

lundi 4 juillet 2005 à 12:00:57 | Re : erreur! UPDATE !!! Nouvel enregistrement dans une table !

ktypao

Avec cette méthode c'est pour les dates que ça marche pas, c'est un comble, non?

Donc ici, j'ai une erreur de syntaxe pour les dates.
Si je met  # " & ds & " #  il me met une erreur de syntaxe.
Si je met  ' " & ds & " '   ou  " & ds & "   l'enregistrement se fait bien mais avec les valeurs par défaut des dates, 00-00-0000.

Je ne sais plus koi faire, j'ai tout essayé!

 Encore un p'tit conseil pour une pauv' p'tite programmeuse en galère ?
lundi 4 juillet 2005 à 13:38:48 | Re : erreur! UPDATE !!! Nouvel enregistrement dans une table !

dan80



 t sur que tes champs sont au format date?

tu pe toujours essayé ca:

tu fais soit:

1- un cdate('ta date') pour convertir en date

2- ou tu fais format('ta date',"MM/dd/yyyy")

fais moi signe

je suis toujours a aidé un programmeur en détresse sutout si c'est une progammeuse
lundi 4 juillet 2005 à 14:10:49 | Re : erreur! UPDATE !!! Nouvel enregistrement dans une table !

frop01

Membre Club
envoi la structure sql (Create TABLe ....)

pour voir les types des champs !!


Cette discussion est classée dans : erreur, id, cn, nouvel, update


Répondre à ce message

Sujets en rapport avec ce message

Erreur BDD SQL lors d'un update [ par Redman31100 ] J'ai créer une application sur VS 2008 Express en suivant ce cours : http://msdn.microsoft.com/fr-fr/vbasic/msdn.coachvb.atelier5.aspxVoici mes header erreur oledbexeption [ par mell01 ] bonjour, j'ai qql soucis depuis mon passage à vb.net, j'ai par exemple un msg( vb )d'erreur de syntaxe sql sur un insert(bd access) alors que directem Erreur au lancement d'un ActiveX (ID de sécurité) [ par tanginthemiddle ] Losrque je lance mon composant à partir de Visual studio 6, l'erreur suivante s'affiche:<span style="FONT-SIZE: 10pt; COLOR: #333333; FONT-FAMILY: Ver Tableau croisé dynamique - Macro - Erreur n°5. [ par Mxwell ] Bonjour à tous. (Et bonne année:))J'ai un petit souci lors de la création d'un tableau croisé dynamique à l'aide d'une macro.Comme vous pouvez le voir creation de compte exchange 2003 [ par Blorf78 ] bonjour je cherche a créé un script d'automatisation des créations de compte utilisateurs en VBscript. le systeme d'exploitation du serveur en place e erreur lors de l'xecution de mon programme [ par tif27940 ] Bonjour, voici mon programme : [code=aspx] Dim nom As String Dim pnom As String Dim civ As String Dim tel As String D Erreur de synthaxe de l'instruction Update Access 2008 [ par supdate ] bonjour je developpe avec vb 2008 Express, j'ai crée une table que je souhaites mettre à jour à travers l'instruction Update, lorsque j execute, une e Problème de date dans un update [ par youfoux ] Bonjour,voilà j'ai un petit souci sur cette requête depuis un petit moment avec comme message d'erreur "Erreur '3144' erreur de syntaxe dans la UPDATE suppression dans un bd access [ par pierre4064 ] Bonjour, Je n'arrive pas à supprimer un champ de ma base de donnée, ça m'affiche le message d'erreur suivant : "Erreur d'execution '3251':Le jeu d'enr suppression dans une bd access [ par pierre4064 ] Bonjour, Je n'arrive pas à supprimer un champ de ma base de donnée, ça m'affiche le message d'erreur suivant : "Erreur d'execution '3251':Le jeu d'enr


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
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 : 0,780 sec (4)

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