为什么这条语句在查询分析器中可以执行,在Delphi中就不能执行呢?

解决方案 »

  1.   

    select * from Rcdjb order by convert(int,    [id]   ) desc注意保留字,回最好回避这些东西
      

  2.   

    adoquery1.active:=fasle;
    adoquery1.sql.clear;
    adoquery1.sql.add('select * from Rcdjb order by convert(int,id) desc');
    adoquery1.active:=True;
      

  3.   

    还是不行.错误提示:Invalid use of keyword.Token :(int,[id]).Line Number 1.
      

  4.   

    是在 Sql Server 2000 下吗 ?
      

  5.   

    order by 后面的字段在select后必须定义,不能用*包括。
      

  6.   

    你的id字段是不是有非数值(例如
    id   varchar(4)Zy
    8603
    8602要是这样的话,应该不好用
      

  7.   

    if ID Int, 
    select * from table order by ID desc 
    没错if char, 
    select * from table order by Convert(int,ID) Desc 
    没错虽然是保留字
      

  8.   

    在查询分析器中执行是没错啊,可是请各位在Delphi中试一下,看看会不会出错?
      

  9.   

    select convert(int,id) as id from Rcdjb order by id desc
      

  10.   

    Sql_txt:= 'select convert(int,id) as id from Rcdjb order by id desc'
    query1.close;
    query1.clear;
    query1.add(sql_txt);
    query1.open;
      

  11.   

    我试了呀!在delphi里面没有问题呀!
    with adoquery1 do
    begin
    close;
    sql.clear;
    sql.add('select * from bbb order by convert(int,chengji) asc');
    open;
    end;