adoquery1.sql.add('select bh,name from table where ')
adoquery1.aql.add(formatdatetime('yyyy',日期)+'='+syear[i])
adoquery1.execute程序提示:日期找不到或没定义,日期是table的字段名,又该如何写呢?我用的是sql

解决方案 »

  1.   

    formatdatetime('yyyy',日期)在‘日期’这里应该用DELPHI的变量名,因为这是DELPHI里的函数,必需符合DELPHI的语法!!建议声明一个TDateTime类型变量
      

  2.   

    adoquery1.sql.add('select bh,name from table where ')
    adoquery1.aql.add('Year(日期) = ' + syear[i])
    adoquery1.execute
      

  3.   

    你這語句有問題呀。
    無論是sql語法還是delphi語法都不對。
    adoquery1.sql.add('select bh,name from table where ')
    adoquery1.aql.add('datepart(year,日期字段)='''+syear[i]+'''')
    adoquery1.execute
      

  4.   

    兄弟,你试试下面的,用
    FormatDateTime('yyyy-mm-dd hh:mm:ss',datetime类型的东东)试试,如
    ' from PspStockMoveCong a join PspStockMove b on a.Key_id=b.Key_id'+
                ' where b.Shop_id='''+ShopID+''' and b.St_id='''+StID+''''+
                ' and ((a.Goods_id like '''+'%'+trim(Edt_Find1.Text)+'%'+''') or (a.Goods_barcode like '''+'%'+trim(Edt_Find1.Text)+'%'+'''))'+
                ' and b.operate_date>='''+FormatDateTime('yyyy-mm-dd hh:mm:ss ',DTP_BeginDiaoBo.Datetime)+''''+
                ' and b.operate_date<='''+FormatDateTime('yyyy-mm-dd hh:mm:ss',DTP_EndDiaoBo.Datetime)+''''+