带提取的C#update语句

时间:2013-04-13 11:05:05

标签: c# sql oledb

我收到错误消息:

  

IErrorInfo.GetDescription因E_FAIL(0x80004005)而失败

我认为代码中不是任何需要[]或?

的变量

我在搜索,每个人都与[]有关。

string queryString = "SELECT sum(skupaj) FROM cas where sifra = " + textBox1.Text + " and EXTRACT(MONTH FROM Datum) = "+textBox2.Text+"";

try                                                             
{
            OleDbConnection conn = GetConnection();
            OleDbCommand command = new OleDbCommand(queryString, conn);
            conn.Open();
            OleDbDataReader reader = command.ExecuteReader();

            while (reader.Read())
            {
                ure = reader.GetValue(0).ToString(); ;

            }
            reader.Close();

}
catch (Exception ex)
{
    MessageBox.Show(ex.Message);
}

2 个答案:

答案 0 :(得分:0)

如果你只想要一些东西,你就不需要一个datareader。只需这样做:

 try                                                             
        {
            OleDbConnection conn = GetConnection();
            OleDbCommand command = new OleDbCommand(queryString, conn);
            conn.Open();
            int count = (Int32) command.ExecuteScalar();
            conn.Close();    
        }

答案 1 :(得分:0)

尝试将表名放在像[CAS]这样的方括号内。如果您在ODBC sql中使用保留字,或者您正在使用其间有空格的字段,那么您必须将字段放在“字段名称”之类的一对标记内,就会发生这种问题。