【发布时间】:2020-10-20 10:13:02
【问题描述】:
我有一个 Access 数据库。我正在创建一个 Winforms 应用程序来管理它。所以我制作了这个表格,允许用户在数据库中创建一个新条目。我已经成功地将文本框中的文本值传递到数据库中,但是当涉及到复选框时我被卡住了。
在我的 Access 数据库中的表中有一个名为“LABEL”的列,它是一个是/否字段。我需要将复选框的状态附加到该字段。
这是我目前的代码,我正在考虑如何实现它。
private void btn_Next_Click(object sender, EventArgs e)
{
try
{
connection.Open();
OleDbCommand command = new OleDbCommand();
command.Connection = connection;
command.CommandText = "insert into COMPUTERS (PCNAME, PROCESSOR, DRIVE, RAM, COMMENT, YEAR_MADE, LOC_SITE, CONS_DATA, OLD_ID, TYPE, COMPANY, DONOR, LOCATION, LABEL) values('"+ txt_PCName.Text + "', '"+ txt_Processor.Text+ "', '" + txt_Drive.Text + "','" + txt_RAM.Text + "', '" + txt_Comment.Text + "', '" + txt_Year.Text + "', '" + txt_LocSite.Text + "', '" + txt_ConData.Text + "', '" + txt_OldID.Text + "','" + comboBoxType.Text + "','" + comboBoxCompany.Text + "','" + comboBoxDonor.Text + "','" + comboBoxLocation.Text + "')";
command.ExecuteNonQuery();
MessageBox.Show("Καταχώρηση επιτυχής.");
}
catch (Exception ex)
{
MessageBox.Show("Error " + ex);
}
connection.Close();
}
如果可能,我想将其添加到当前查询中。
提前致谢。对不起,如果代码草率,初学者的东西。
【问题讨论】:
-
使用命令参数来定义您要存储的数据的值和类型。 CheckBox 值为
bool,Yes/No字段为bool。只需存储 CheckBox 的当前Checked状态即可。使用Parameters。请注意,Access 参数是位置参数,而不是命名(您可以简单地使用?作为占位符):仅考虑添加它们的顺序。
标签: c# sql sql-insert