无法查询MS Access数据库:"查询表达式中的语法错误(缺少运算符)"

时间:2015-09-26 12:50:24

标签: c#

private void button3_Click(object sender, EventArgs e)
    {
        if (textBox2.Text != "" & listBox1.SelectedIndex != -1)
        {
            string q = "update info set name='" + textBox2.Text.ToString() + "' where id " + listBox1.SelectedItem.ToString();
            dosomething(q);
            textBox2.Text = "";


        }
    }
private void dosomething(String q)
    {
        try {
            cn.Open();
            cmd.CommandText = q;
            cmd.ExecuteNonQuery();
            cn.Close();
            loaddata();

        }

每当我尝试使用我的程序从MS Access更新数据时,我都会收到以下错误: enter image description here

我的代码有问题吗?

1 个答案:

答案 0 :(得分:1)

您需要id " + listBox1.SelectedItem.ToString();之间的运算符。所以:

id = " + listBox1.SelectedItem.ToString(); 

或您想要使用的任何运算符,例如>,> =等等......

你也有:

string q = "update info set name='" +

但它必须是:

string q = "update info set name ='" +

注意我在name和=符号之间添加了一个空格。