cs_LaveVaisselle
Messages postés3Date d'inscriptionvendredi 2 mai 2003StatutMembreDernière intervention20 août 2006
-
18 août 2006 à 19:49
cs_LaveVaisselle
Messages postés3Date d'inscriptionvendredi 2 mai 2003StatutMembreDernière intervention20 août 2006
-
20 août 2006 à 09:45
Bonjour à tous.
Mon appli : Visual Basic express 2005 + Bdd Access
Je suis récemment passé de VB6 a VB2005 donc je tatonne encore un peu, mais je rencontre un problème curieux. Lorsque je veux mettre a jour ma base ou ajouter un enregistrement, la longueur maximale d'une chaine passé dans la requête est de 1024 caractéres... C'est normal ? J'utilise les methode INSERT et UPDATE de mon TableAdapter.
Les champs texte qui ne passe pas sont des body de page HTML (caractére spéciaux) et ont une longueur de plusieurs milliers de caractéres.
D'avance merci pour vos réponses, parce que moi sur ce coup la je séche !
cs_LaveVaisselle
Messages postés3Date d'inscriptionvendredi 2 mai 2003StatutMembreDernière intervention20 août 2006 20 août 2006 à 09:45
Je viens de trouver la solution a mon probleme
Effectivement, un paramètre de la requete bloquait bien le nombre de caractéres envoyés à 1024...
Pour modifier :
<ol><li>Afficher les propriétés de la requête qui pose probleme dans le tableadapter (dans mon cas, la requête insert et la requête update </li><li>Modifier la propriétés parameters (collection)</li><li>Ajuster la longueur du champ : proprièté size</li></ol>Merci pour votre aide
cs_LaveVaisselle
Messages postés3Date d'inscriptionvendredi 2 mai 2003StatutMembreDernière intervention20 août 2006 19 août 2006 à 09:31
Les champs de la bases sont deja en mémo. En fait, je reprend un projet VB6/Access dans lequel je bossais en DAO. Ma base contient donc deja des enregistrements de pages depassant les 10 000 caractères.
Lorsque je recharge ces enregistrements dans mon formulaire tout se passe bien, par contre si je l'update (sans même apporter une modification), ma chaine de texte se tronque a 1024 caractéres.
Voici comment je charge mon formulaire pour modification : 'modification : selection de la page dans la bdd
table = PageTableAdapter.GetDataByID(Me.TextBox1.Text)
ligne = table.Rows(0)
Me.TextBox1.Text = ligne.Item("id").ToString
Me.TextBox3.Text = ligne.Item("text").ToString
La textbox3 affiche correctement la chaine de texte, même si elle fait plus de 1024 caractéres.
Un update :
'enregistrement des modifications
PageTableAdapter.UpdateQuery(Me.TextBox1.Text, Me.TextBox2.Text, Me.TextBox4.Text, Me.ComboBox3.Text, Me.CheckBox1.Checked, Me.CheckBox2.Checked, Me.ComboBox1.Text, Me.ComboBox2.Text, Me.TextBox3.Text, Me.TextBox5.Text, Me.TextBox1.Text)
Me.ToolStripStatusLabel1.Text = "Dernier enregistrement : " & Now
La chaine de texte de la textbox3 est tronquée a 1024 caractéres...
j'ai essayé de passer le contenu de ma zone dans une variable string et d'enregistrer avec ma variable mais rien ne change...
Par contre si je connecte manuellement ma base plutot que de passer par les tableadapter, et que j'ajoute une ligne a mon dataset en cours, là la modif passe... normal docteur ?
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 19 août 2006 à 11:55
"normal docteur ?" -> beh ne touchant pas à DotNet...
je penche pour non tout de même, peut-être y a t'il une option pour ta connection à la base ou pour le update permettant de dépasser cette limite...
<hr size="2" width="100%" />Prenez un instant pour répondre à ce sondage svp