Checkbox et sqlserveur

[Résolu]
Signaler
-
 mohellebi -
Bonjour tout le monde
Je developpe sous vb 2008 et sql serveur, et dans mon application je dispose de checkbox.
De l'autre coté dans ma db j'ai une colonne cloture de type int.
Maintenant ma question est comment lier la checkbox à la colonne cloture est dire que coché c'est 1 et décoché c'est 0
Merci d'avance pour toute personne pourrait m'éclairer.

8 réponses

Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
Ton SqlDbType pour le paramètre cloture doit être du même type que le champs dans la base. Tu as parlé de int au départ, tu as changé depuis ?

De plus j'avais dis une bétise, c'est pas binary pour les booléan mais bit, binary c'est pour tout autre chose.


[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
239
Bonjour,
ta réponse est là ===>>
Tapez le texte de l'url ici.
il te suffit dès lors d'utiliser la conversion en integer.

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
239
Ah oui ! 0 et 1
===>>
je te rappelle alors que le carré de -1 1 et que celui de 0 0
Le reste est simple, non ?


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
Si ta colonne est de type boolean (binary, je crois) tu binde la colonne sur la propriété Checked de ta chexbox


[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
Salut,
casy, si j'essaye justement de dinder directement la colonne à la chekbox, rien n' est pris en charge, en revanche le lien que m'avait proposé ucfoutu n'explique pas justement comment la binder
je reste en attente d'une solution
Merci encore à vous
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
Comment attache-tu tes controles à ta base de données ?

Je viens de faire le test d'un binding de la propriété Checked sur une colonne de type int, ça marche sans problème. Toute valeur différente de 0 est prise comme True


[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
Salut,
vraiment un grand merci pour ton aide casy
voila mon code




 connection()
            connexion.Open()

            Dim strRequete As String = "SELECT * FROM cliente"
            Dim dtt As DataTable
            Dim oSqlDataAdapter As New SqlDataAdapter(strRequete, connexion)
            Dim oDataSet As New DataSet("cliente")
            oSqlDataAdapter.Fill(oDataSet, "cliente")
            dtt = oDataSet.Tables("cliente")

            oSqlDataAdapter.InsertCommand = New SqlCommand("INSERT INTO client(article_c,prix_c,quantité,cloture) Values(@ar,@px,@qt,@clo)", connexion)

           
            oSqlDataAdapter.InsertCommand.Parameters.Add("@pr", SqlDbType.VarChar, 20, "article_c")
            oSqlDataAdapter.InsertCommand.Parameters.Add("@px", SqlDbType.Real, 5, "prix_c")
            oSqlDataAdapter.InsertCommand.Parameters.Add("@qt", SqlDbType.Real, 5, "quantité_c")
            oSqlDataAdapter.InsertCommand.Parameters.Add("@clo", SqlDbType.Binary, 2, "cloture")

            Dim oDataRow As DataRow
           

            oDataRow = oDataSet.Tables("cliente").NewRow()

           
            oDataRow("article_c") = articleTextBox.Text
            oDataRow("prix_c") = prixTextBox.Text
            oDataRow("quantité") = quantiteTextBox.Text
            oDataRow("cloture") = CheckBox1.Checked
            

            oDataSet.Tables("cliente").Rows.Add(oDataRow)
            oSqlDataAdapter.Update(oDataSet, "cliente")
            oDataSet.Clear()
            oSqlDataAdapter.Fill(oDataSet, "cliente")
            dtt = oDataSet.Tables("cliente")
            MsgBox("Article enregistré avec succés", MsgBoxStyle.Information, "Status")
            connexion.Close()
  
salut,
haaaa ok maintenant avec bit ça marche nickel, merci encore pour tout tes efforts