HOW TO:使用C#将选中的复选框插入mysql

时间:2013-05-16 00:35:02

标签: c# mysql wpf checkbox

我有一个小的WPF应用程序,但不起作用。它连接到mysql数据库。我想要做的是能够检查我的wpf中的几个选项(使用复选框),并将选中的选项存储在我的数据库中。

这是我的sql代码:

create table ejemploc
(
id int not null,
nombre varchar(35),
opcion1 boolean,
opcion2 boolean,
opcion3 boolean,
constraint pkid primary key (id)
)engine=innodb;

我的c#代码:

conexion.Open();
            try
            {
                //I don't know what to put here
                cmd.CommandText = "insert into ejemploc values ('"+textBox1.Text+"', '"+textBox2.Text+"', '"++"', '"++"', '"++"')";
                cmd.ExecuteNonQuery();
                cmd.Clone();
                MessageBox.Show("Datos Guardados", "Mensaje");
                conexion.Close();
                CargaDataGridView();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

非常感谢您的回答!

修改

答案是改变两个代码:

create table ejemploc
(
id int not null,
nombre varchar(35),
opcion1 varchar(5),
opcion2 varchar(5),
opcion3 varchar(5),
constraint pkid primary key (id)
)engine=innodb;

它从布尔值变为varchar(5)

我的c#代码改为:

"insert into ejemploc values ('" + textBox1.Text + "', '" + textBox2.Text + "', '" + checkBox1.Checked.ToString() + "', '" + checkBox2.Checked.ToString() + "', '" + checkBox3.Checked.ToString() + "')";

感谢@Thomas Fanley为你的回复:D

2 个答案:

答案 0 :(得分:2)

错误的代码。使用参数。

示例:

cmd.CommandText = "INSERT INTO myTable VALUES(NULL, @number, @text)";
cmd.Parameters.AddWithValue("@number", 1);
cmd.Parameters.AddWithValue("@text", "One");

答案 1 :(得分:0)

您可以尝试(CheckBox.Checked).ToString()。这将返回true / false,具体取决于是否选中它。