Question Comment mettre à jour les données que possède sa clé primaire de Type

Résolu
samantik2 - 28 sept. 2012 à 15:22
 samantik2 - 29 sept. 2012 à 00:49
Bonjour a toutes
Je veux mettre à jour une ligne spécifique dans ma base de données, mais cet erreur afficher dans processus d'enregistrement :
Type de données incompatible dans l'expression du critère:

lorsque j'ai changer le type de champ Type : NuméroAuto au Type : Mémo ne montre aucun message
Mais je ne veux pas changer les types des champs de ma base de données
voici mon code Update :
Imports System.Data
Imports System.Data.OleDb

Public Class edit_rasm

  Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        Dim Savecommand As New OleDb.OleDbCommand
        Dim Connectionstring As String = _
    "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & _
    Application.StartupPath & "\Registre.accdb;" & _
    "Jet OLEDB:Database Password=123+Plus"
        Dim newconnection As New OleDbConnection(Connectionstring)
        Savecommand.Connection = newconnection
        Savecommand.CommandType = CommandType.Text
        Savecommand.CommandText "UPDATE Registre_1 SET nes_num_acte '" & Trim(nes_num_acte.Text) & "' , nes_registre = '" & Trim(nes_registre.Text) & "' , nes_type_registre = '" & Trim(nes_type_registre.Text) & "' WHERE N° ='" & TextBox1.Text & "'"
        newconnection.Open()
        Savecommand.ExecuteNonQuery()
        newconnection.Close()
        MsgBox("l'opération de mise à jour a été effectuée avec succès", MsgBoxStyle.Information)
    End Sub

voici mon table :

3 réponses

NSUADI Messages postés 540 Date d'inscription mardi 4 août 2009 Statut Membre Dernière intervention 1 février 2013 2
28 sept. 2012 à 16:22
Salut,
Je pense que dans ta requête, dans l'expression du critère tu dois mettre:
WHERE N° =" & TextBox1.Text 
et non
WHERE N° ='" & TextBox1.Text & "'"


Ce qui compte,ce n'est pas ce qu'on a mais plutôt ce que l'on fait avec ce qu'on a...

Visual Basic .Net is the best
and vb6.0
3
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
28 sept. 2012 à 18:41
Bonjour,

WHERE N° =" & TextBox1.Text
De base, on évite les noms avec des caractères non ASCII de base ( =< 128) car cela peut poser des problèmes d'interprétation de la requête.

Ensuite, espionne la valeur de chaine générée, pour récupérer la requête tel quel pour l’exécuter sur Access.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list
---
Mon site
3
merci NSUADI & NHenry beaucoup
0
Rejoignez-nous