在SQL Server中插入多个TextField值

本文关键字:TextField 插入 SQL Server | 更新日期: 2023-09-27 18:13:21

我有一个包含3个文本字段的面板,在每个文本字段中用户可以输入一个年龄。除了如果用户在两个或多个文本字段中输入数字(循环正在工作,它只是不将下一个文本字段值插入数据库中),一切似乎都正常工作,以下是场景:

Depdent 1 Age: 10
Depdent 1 Age: 12
Depdent 1 Age: 14

我想要插入到表中的是下面的

ID      age
1       10
2       12
3       14

当我点击提交时,它只插入第一个记录,然后抛出一个错误,我知道错误是通过尝试插入两个文本字段值到数据库中的单元格,但我不知道如何修复它,我的表有一个ID字段,这是一个主键和自动增量。任何建议都很感激。谢谢你。

下面是我的代码:
const string query = "INSERT INTO deductible (age) VALUES (@age)";
using (var command = new SqlCommand(query, conn))
{
foreach (TextBox tb in Panel1.Controls.OfType<TextBox>())
{
    if (tb.Text != "0")
    {
        command.Parameters.AddWithValue("@age", tb.Text);
        command.ExecuteNonQuery();
    }
}

在SQL Server中插入多个TextField值

执行查询后使用SqlParameterCollection.Clear Method:

if (tb.Text != "0")
{
    command.Parameters.AddWithValue("@age", tb.Text);
    command.ExecuteNonQuery();
    command.Parameters.Clear();
}