使用c#winform增加数据库值

时间:2014-02-28 12:25:19

标签: c# database winforms ms-access

我想要发生的是,在我的Windows窗体中,我有一个接受数字或从前一个表单中获取数字的文本框..如果文本框检测到它不为空,我的数据库中的值为0,将自动增加到1。

例如,如果文本框检测到用户输入了数字" 3"则访问中的字段值已经为2。然后在ms访问中,它将成为5.我怎么能这样做?请帮我。以下是我的代码。

if (!string.IsNullOrEmpty(pv1))
            {
                string newline = Environment.NewLine;
                textBox1.Text += newline + Convert.ToString(pv1);
                textBox2.Text += newline + "F(x) Lighstick 1";
                textBox3.Text += newline + Convert.ToString(pv7);
                textBox5.Text = Convert.ToString(pv15);
                textBox4.Text = Convert.ToString(pv14);
                textBox6.Text = Convert.ToString(pv16);
}

在我的数据库中,字段aqty和atotal是0.因此,当textbox1.text(pv1)的值为3且texbox3.text(pv7)的值为5时,则aqty和atotal将变为3和5。

1 个答案:

答案 0 :(得分:2)

假设您已经知道如何从Ms Access数据库获取数据,您可以采用相同的方式进行更新。只需将SQL SELECT语句更改为UPDATE语句,正确添加参数,然后执行SQL更新命令。例如:

conn.Open();

string query = "UPDATE [table_name] SET [column_name] = [column_name] + ? WHERE id = ?";
var accessUpdateCommand = new OleDbCommand(query, conn);
accessUpdateCommand.Parameters.AddWithValue("new_value", textBoxNewValue.Text);
accessUpdateCommand.Parameters.AddWithValue("id", 123);
accessUpdateCommand.ExecuteNonQuery();

conn.Close();

上面的SQL更新语句会将column_name的值更新为(当前值+新值)匹配WHERE子句(不带WHERE子句的特定行,表中的所有行将添加相同的新值)