我的代码是: ADOQuery1.Close; ADOQuery1.SQL.Clear ; ADOQuery1.SQL.Add('Select max(corp_no) from zfb_unit_no'); if ADOQuery1.recordcount>0 then edit2.text := ADOQuery1.fieldbyname('corp_no').AsString ; ADOQuery1.open; if ADOQuery1.recordcount<=0 then edit2.text :='0001' ;
如果你的代码是上面那样的,你的代码确实有问题的;ADOQuery1.Close; ADOQuery1.SQL.Clear ; ADOQuery1.SQL.Add('Select max(corp_no) from zfb_unit_no'); if ADOQuery1.recordcount>0 then ////你的ADOQuery1这是还没有打开,无法得到RecordCount的值; edit2.text := ADOQuery1.fieldbyname('corp_no').AsString ; //问题同上,而且不能通过FieldByName('corp_no') 去访问它, //除非你的sql语句换成: Select max(corp_no) corp_no from zfb_unit_no ADOQuery1.open; if ADOQuery1.recordcount<=0 then edit2.text :='0001' ;
ADOQuery1.Close;
ADOQuery1.SQL.Clear ;
ADOQuery1.SQL.Add('Select max(corp_no) from zfb_unit_no');
if ADOQuery1.recordcount>0 then
edit2.text := ADOQuery1.fieldbyname('corp_no').AsString ;
ADOQuery1.open;
if ADOQuery1.recordcount<=0 then
edit2.text :='0001' ;
所以Active=True出错"ADOQuery1:Missing SQL property."
ADOQuery1.SQL.Clear ;
ADOQuery1.SQL.Add('Select max(corp_no) from zfb_unit_no');
if ADOQuery1.recordcount>0 then
////你的ADOQuery1这是还没有打开,无法得到RecordCount的值;
edit2.text := ADOQuery1.fieldbyname('corp_no').AsString ;
//问题同上,而且不能通过FieldByName('corp_no') 去访问它,
//除非你的sql语句换成: Select max(corp_no) corp_no from zfb_unit_no
ADOQuery1.open;
if ADOQuery1.recordcount<=0 then
edit2.text :='0001' ;