1. #1
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    mai 2013
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : mai 2013
    Messages : 110
    Points : 54
    Points
    54

    Par défaut Insérer une colonne de DataGridView dans une colonne de la Base de données de Type float

    Bonjour, je fais une insertion depuis ma DataGridView vers ma base de données , l'insertion marche bien pour toutes les colonnes qui sont de type varchar et Int sauf les deux dernières colonnes qui sont de type float , ca me donne ce message d'erreur " Erreur de conversion du type de données nvarchar en float" , quelqu'un aurait une idée comment convertir le type de la Datagrid View en float ?
    voici le code pour insérer:
    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
     
    Dim cn As New SqlConnection("ma connexion")
            Dim cmd As SqlCommand
     
            cmd = New SqlCommand("insert into Statistiques values ( @Login,@Operation,@Nbr_docs,@tps_traite,@moy_doc_hr,@moy_sec_doc,@taux_err)", cn)
            cmd.Parameters.AddWithValue("@Login", DataGridView1.SelectedRows(0).Cells(0).Value.ToString())
            cmd.Parameters.AddWithValue("@Operation", DataGridView1.SelectedRows(0).Cells(1).Value.ToString())
            cmd.Parameters.AddWithValue("@Nbr_docs", DataGridView1.SelectedRows(0).Cells(2).Value.ToString())
            cmd.Parameters.AddWithValue("@tps_traite", DataGridView1.SelectedRows(0).Cells(3).Value.ToString())
            cmd.Parameters.AddWithValue("@moy_doc_hr", DataGridView1.SelectedRows(0).Cells(4).Value.ToString())
            cmd.Parameters.AddWithValue("@moy_sec_doc", DataGridView1.SelectedRows(0).Cells(5).Value.ToString())
            cmd.Parameters.AddWithValue("@taux_err", DataGridView1.SelectedRows(0).Cells(6).Value.ToString())
            cn.Open()
            cmd.ExecuteNonQuery()
            cn.Close()
            MessageBox.Show("Données Insérées")
    Merci d'avance

  2. #2
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    avril 2007
    Messages
    12 606
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : avril 2007
    Messages : 12 606
    Points : 22 606
    Points
    22 606

    Par défaut

    cells(x).value est typé sur objet = peut contenir n'importe quoi (donc un float ou un string)
    toi tu forces avec tostring à transformer le contenu en string pour le mettre dans le parameter

    et tu t'étonnes qu'il dise qu'il attend un float et que tu lui donnes un string ?

    le but n'est pas d'écrire du code au hasard, on utilise tostring quand on a une bonne raison de le faire (à savoir obtenir un string)
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    mai 2013
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : mai 2013
    Messages : 110
    Points : 54
    Points
    54

    Par défaut

    Je comprends ce que tu veux dire et j'ai essayer d'enlever le ToString mais quand je l'enlève ça ne marche pas non plus ça me donne une autre erreur

  4. #4
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    mai 2013
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : mai 2013
    Messages : 110
    Points : 54
    Points
    54

    Par défaut

    c'est bon le problème est résolu , Merci

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 26/12/2010, 21h20
  2. Réponses: 9
    Dernier message: 13/03/2008, 01h34
  3. insertion dans une table puis update dans une autre table
    Par uptoditime dans le forum VBA Access
    Réponses: 5
    Dernier message: 10/10/2007, 18h08
  4. Recherche de valeur dans une feuille et affichage dans une autre
    Par Zebulon777 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 15/05/2007, 09h40
  5. Réponses: 3
    Dernier message: 06/09/2006, 09h06

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