我正在使用C#Windows表单应用程序,我在一个checklistbox中有5个项目。 现在我必须将这些项目保存到MS Access数据库表中。
有谁知道我应该怎么做? (Sprachen = checkedlistbox)
private void button1_Click_1(object sender, EventArgs e)
{
try
{
connection.Open();
OleDbCommand command = new OleDbCommand();
command.Connection = connection;
command.CommandText = "INSERT INTO Employee (Vorname, Nachname, Wohnort, Geburtstag, Abteilung, Nummer, MKZ, Führerschein, Sprachen) values('" + Vorname.Text + "','" + Nachname.Text + "','" + Wohnort.Text + "','" + Geburtstag.Text + "','" + Abteilung.Text + "','" + Mitarbeiter.Text + "','" + MKZ.Text + "'," + Führerschein.Checked.ToString() + "," + Sprachen.SelectedItems + ")";
command.ExecuteNonQuery();
MessageBox.Show("Daten gespeichert!");
connection.Close();
}
catch (Exception ex)
{
MessageBox.Show("Error " + ex);
}
每当我用toString()尝试它时,它会给我一个错误: 对于至少一个必需参数,未指定任何值。
我只计算我在核对表框中检查了多少项目。
有人有解决方案吗?
答案 0 :(得分:1)
Sprachen.SelectedItems返回所选项目的列表。如果您尝试插入在checkedlistbox中检查的项目,则必须循环检查checklistbox.CheckedItems。 而不是“Sprachen.SelectedItems”传递checklistbox.CheckedItems [0] .ToString()作为值并检查代码。注意:0是硬编码的..稍后你可以循环它
字符串类型值必须在单引号内传递。查看最后两个字段。