IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

cast n'est pas valide


Sujet :

Windows Forms

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2008
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 15
    Points : 12
    Points
    12
    Par défaut cast n'est pas valide
    Bonjour ;
    j'ai voulu inserer un enregistrement toujours le meme erreur lors de l'execution.
    "le cast spécifié n'est pas valide"
    Et voila le code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
     
    Imports System.Data
    Imports System.Data.OleDb
    Imports System.Data.OleDb.OleDbCommand
    Imports System.Data.OleDb.OleDbDataReader
    Public Class MAJ_Fournisseur
        Inherits System.Windows.Forms.Form
        Private Sub Label3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label3.Click
        End Sub
     
        Private Sub MAJ_Fournisseur_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            module_achat.connecter()
        End Sub
        Private Sub vider()
            Me.TextFodec.Text = ""
            Me.TextContactFrs.Text = ""
            Me.TextCodeFrs.Text = ""
            Me.TextTauRet.Text = ""
            Me.TextCodeFrs.Focus()
        End Sub
        Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
            Module_connexion.connection()
     
            '    If TextCodeFrs.Text <> "" Then
            Try
                Ajout("select code_client from CLIENT", Me.TextCodeFrs.Text, "" & _
                        "Article Déja Existé", "insert into CLIENT values ('" & _
                        "" & Me.TextCodeFrs.Text & "','" & Me.TextContactFrs.Text & "'," & _
                        "", "Article Bien Ajouter")
            Catch ex As Exception
                MsgBox(ex.Message)
            End Try
     
            vider()
            '  Else
            '  MsgBox("Vous Devez remplire tous les chmaps avant d'Ajouter ")
            ' End If
        End Sub
     
        Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
            Me.Close()
        End Sub
    End Class
    ainsi que le module contenant la fonction appelée:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
     
    Imports System.Data
    Imports System.Data.OleDb
    Imports System.Data.OleDb.OleDbConnection
    Imports System.Data.OleDb.OleDbDataReader
     
     
    Module module_achat
     
        Public dr As OleDbDataReader
        Public strcon As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\GESTION_COMMERCIALE.mdb;Jet OLEDB:Database Password=besmelleh;"
        Public con As New OleDbConnection(strcon)
        Public cmd As OleDbCommand
        Public req As String
     
        Public Sub Ajout(ByVal req_verifi As String, ByVal txtbox_verifi As String, ByVal mes_verifi As String, ByVal req_mis_a_j As String, ByVal mes_mis_a_j As String)
            Try
                Dim rep As Boolean = False
                'execut le select
                cmd = New OleDbCommand(req_verifi, Module_connexion.cn)
                dr = cmd.ExecuteReader
                'if textbox_verification deja existe rep=true
                Do While dr.Read
                    If txtbox_verifi.ToLower.Equals(dr.GetString(0).ToLower) Then
                        rep = True
                    End If
                Loop
                dr.Close()
                ' if textbox_verification(c-à-d codeclient) n'existe pas faire l'ajout
                If rep = False Then
                    Try
                        req = req_mis_a_j
                        cmd = New OleDbCommand(req, Module_connexion.cn)
                        cmd.ExecuteNonQuery()
                        'MsgBox(req_mis_a_j)
                    Catch ex As Exception
                        MsgBox(ex.Message)
                    End Try
                Else 'rep=true textbox_verification(c-à-d codeclient) deja existe
                    MsgBox(mes_verifi)
                End If
            Catch ex As Exception
                MsgBox(ex.Message)
            End Try
        End Sub
        Public supp_frs
        Public modif_frs
        Public Sub connecter()
            Try
                If con.State = ConnectionState.Closed Then
                    con.Open()
                End If
            Catch ex As Exception
                MsgBox(ex.Message)
            End Try
        End Sub
        Public Sub deconnecter()
            con.Close()
        End Sub
     
    End Module

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    374
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 374
    Points : 451
    Points
    451
    Par défaut
    Bonjour,
    c'est un problème de type de données différent.(valeur null dans un champ)
    Pour vérifier les requêtes, récupère le texte de la requête et exécute cette requête dans un analyseur sql, bien souvent l'erreur générée par l'analyseur est plus explicite.
    De plus il est préferable de passer les valeurs en paramètres.
    voir http://webman.developpez.com/article.../sqlparameter/
    Bon boulot Jean

  3. #3
    Membre à l'essai
    Inscrit en
    Mai 2008
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 15
    Points : 12
    Points
    12
    Par défaut
    Je vous remercie beaucoup pour votre aide.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Message d'erreur: Le cast spécifié n'est pas valide.
    Par giscard85 dans le forum ASP.NET MVC
    Réponses: 1
    Dernier message: 30/03/2011, 11h10
  2. Le cast spécifié n'est pas valide
    Par abbd dans le forum Windows Forms
    Réponses: 3
    Dernier message: 31/05/2008, 20h30
  3. Erreur "Le cast spécifié n'est pas valide"
    Par GriffinK dans le forum VB.NET
    Réponses: 4
    Dernier message: 28/04/2008, 10h46
  4. Le cast spécifié n'est pas valide
    Par illegalsene dans le forum VB.NET
    Réponses: 3
    Dernier message: 11/03/2008, 14h59
  5. Problème : cast spécifié n'est pas valide.
    Par paradeofphp dans le forum ASP.NET
    Réponses: 13
    Dernier message: 30/08/2007, 18h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo