Query1.Close;
  Query1.SQL.Clear;
  sqlstring:='update ylwb set 已经上机时间="00:00:00" where 状态=true';
  Query1.SQL.Add(sqlstring);
  Query1.open;
执行后出现以下错误信息:
exception class EnoResultSet with message 'Error creating cursor handle'

解决方案 »

  1.   

    Query1.open;改为
    query1.execute
      

  2.   

    没有query1.execute,你是说的query1.execsql吧?我试了的,不行
      

  3.   

    如果是查询,用Query1.Open;
    如果是添加、删除等,用Query1.ExecSQL;
      

  4.   

    我用了Query1.ExecSQL,一样的是出现EnoResultSet的错误啊?
      

  5.   

    如果换成
    Query1.Close;
    Query1.SQL.Clear;
    sqlstring:='update ylwb set 已经上机时间="00:00:00" where 状态=true';
    Query1.SQL.Add(sqlstring);
    Query1.ExecSQL;
    还不行,那你得看看你的“已经上机时间”的类型与你的"00:00:00" 匹配否?
      

  6.   

    我看是日期型的关系,请在语句中加上一些合适的写法
    如果用的是oracle,应该改为tochar(已经上机时间,"hh:mm:ss")="00:00:00"
      

  7.   

    我用过ExecSQL的,还是有EnoResultSet的错误
      

  8.   

    仅供参考:
    sqlstring:='update ylwb set 已经上机时间='#' + FormatDateTime('YYYY-MM-DD' ,StrToTime('00:00:00')) +'#' + 'where 状态=True';
    Query1.ExecSQL;
    如果是查询,用Query1.Open;
    如果是添加、删除等,用Query1.ExecSQL;
    请尽量别用中文字段名!
      

  9.   

    使用query时,在你的查询有结果集返回时使用OPEN,但是在没有结果集返回时只能使用 ExecSQL了,就不会出现
    'Error creating cursor handle'的错误了
      

  10.   

    我用了ExecSQL但是还是有Error creating cursor handle的错误啊?
      

  11.   

    这个问题我碰过,用到一个转换函数,一时记不清,单用FormatDateTime还不够,如果有需要请发:[email protected]