没有在Access数据库中输入Asp.net单选按钮值
本文关键字:Asp net 单选按钮 输入 Access 数据库 | 更新日期: 2023-09-27 18:09:27
string menu = "";
if (RadioButton3.Checked)
menu = menu + " " + RadioButton3.Text;
if (RadioButton4.Checked)
menu = menu + " " + RadioButton4.Text;
if (RadioButton5.Checked)
menu = menu + " " + RadioButton5.Text;
if (RadioButton6.Checked)
menu = menu + " " + RadioButton6.Text;
TextBox4.Text = menu;
OleDbCommand cmd = new OleDbCommand("insert into bill(name,contact,address,order) values(@a1,@a2,@a3,@a4)", con);
if (RadioButton1.Checked)
cmd.Parameters.AddWithValue("a1", RadioButton1.Text+TextBox1.Text);
else if (RadioButton2.Checked)
cmd.Parameters.AddWithValue("a1", RadioButton2.Text+TextBox1.Text);
else cmd.Parameters.AddWithValue("a1", TextBox1.Text);
cmd.Parameters.AddWithValue("a2", TextBox2.Text);
cmd.Parameters.AddWithValue("a3", TextBox3.Text);
cmd.Parameters.AddWithValue("a4", TextBox4.Text );
con.Open();
cmd.ExecuteNonQuery();
con.Close();
这是我的代码,第四个参数值没有添加到我的数据库。还要注意,db列(order)
你的查询应该抛出一个异常。由于单词ORDER导致的Syntax Error
异常。这是Access的保留关键字(也可能是地球上所有其他数据库的保留关键字)。
如果您没有看到异常,则有一个try catch处理程序,它不会在此代码周围显示错误消息。
在任何情况下,你都可以用方括号把有问题的单词括起来作为
来解决这个问题 OleDbCommand cmd = new OleDbCommand(@"insert into bill
(name,contact,address,[order])
values(@a1,@a2,@a3,@a4)", con);
,并记得删除空的try catch或至少添加一个有意义的消息。