【发布时间】:2013-04-12 03:15:15
【问题描述】:
我知道如何在 Access 查询中将文本框值用于字符串字段,但我无法理解如何将其用于 int 字段。
我正在编写以下查询并收到错误消息。
错误消息:没有为一个或多个必需参数指定值。
OleDbCommand cmd = new OleDbCommand("Update Table1 Set Name= '" + textBox2.Text + "' where ID= " +textBox2.Text , conn);
conn.Open();
cmd.ExecuteNonQuery();
我也尝试将 textBox2 转换为 int,但它也给了我一条错误消息。
输入字符串的格式不正确。
int Id= Convert.ToInt16(textBox2.Text);
OleDbCommand cmd = new OleDbCommand("Update Table1 Set Name= '" + textBox2.Text + "' where ID= " + Id , conn);
conn.Open();
cmd.ExecuteNonQuery();
【问题讨论】:
-
你真的用同一个文本框来输入姓名和身份证吗?
-
大声抱歉,谢谢 :)
-
我的代码现在可以工作了,但我还有一个问题,我没有将文本框字段转换为 INT,但它仍然接受自动编号字段的值。
-
您没有用单引号将文本框括起来。引擎会像这样解释您的查询。
Update Table1 Set Name= 'Steve' where ID= 1这是正确的语法。但是,我将发布一个示例,说明您应该如何编写查询
标签: c# ms-access select sql-update