ADOQuery1.ExecSQL;改为ADOQuery1.Open;即可

解决方案 »

  1.   

    ADOQuery1.ExecSQL; -->> ADOQuery1.Open;ExecSQL()针对的是没有返回数据集的查询//如:insert、update、delete语句
    Open()才返回数据集//select语句
      

  2.   

    多谢楼上各位,我都给散了分(不等)。现在我想在MaskEdit1.Text里输入CUSTOMS_CODE,然后MaskEdit2.Text里会出现CUSTOMS_NAME,SQL应如下:str1 := 'select * from Customs_code where CUSTOMS_CODE like ? ? ?' ;
    但不知LIKE后应加什么代码,还有MaskEdit1.Text:=ADOQuery1.FieldByName('CUSTOMS_CODE').AsString这句也要改吧?怎么改,请各位指点,谢谢。
      

  3.   

    'select * from customs_code where customs_code like ''%'+maskedit1.text+'%'''' MaskEdit1.Text:=ADOQuery1.FieldByName('CUSTOMS_CODE').AsString这句可以.
      

  4.   

    谢谢,不过我在maskedit1.text里刚输入第一个数值,maskedit2.text的结果就出来了。我想在maskedit1.text里把数值输完再回车,maskedit2.text里才出现结果,应该在MaskEdit1.Text:=ADOQuery1.FieldByName('CUSTOMS_CODE').AsString前加个IF语句吧?该怎么做呢?请指点,谢谢。
      

  5.   

    在maskedit1.text的keypress事件中加入
    if key=#13 then 
    显示maskedit2.text 
    就可以了。