1

我想将在 datagridview 中输入的数字插入到数据库表中。每当我这样做时,无论在 datagridview 中输入什么数字,都只会在表中输入 0。这是我的代码..

decimal num=Convert.ToDecimal(amountdataGridView.Rows[0].Cells["amountColumn"].Value);
cmd = new SqlCeCommand("insert into Deposit values('" + num + "')", con);
cmd.ExecuteNonQuery();
4

3 回答 3

1

尝试删除单引号和numString使用ToString()

cmd = new SqlCeCommand("insert into Deposit values('" + num + "')", con);

所以,它会变成

cmd = new SqlCeCommand("insert into Deposit values(" + num.ToString() + ")", con);
于 2013-11-05T06:27:08.167 回答
0

在插入数据库之前确保 num 不为空,并尝试在插入语句中删除值周围的引号:

cmd = new SqlCeCommand("插入存款值(" + num + ")", con);

并尝试输出您的 sql 语句并自己手动插入以查看插入是否正常,例如:

MessageBox.Show("INSERT INTO Deoposit VALUES("+num+")");

希望这可以帮助。

于 2013-11-05T06:24:57.020 回答
0

尝试“文本”而不​​是“值”,我尝试了这个并且它有效:SearchResultGridView.Rows[0].Cells[0].Text

请注意,如果 amountdataGridView.Rows[0].Cells["amountColumn"].Value 为 null,则 Convert 返回 0。你检查过你的值是否正确吗?

于 2013-11-05T06:41:26.957 回答