//说明不存在查询,最大序号返回
with frmDataDm.FunCheckTopTradeSameBuyerNickReceiverAddressTidExistAndGetXuhao_adoq do
begin
Close;
SQL.Clear;
SQL.Add('SELECT MAX(top_xuhao) AS max_top_xuhao FROM top_trade');
Open;
end;
注意:SELECT MAX(top_xuhao) AS max_top_xuhao FROM top_trade 像这种带as的语句,如果没有查到数据不能用isEmpty来判断.
//判断一下是否为空,解决如果top_trade表中一个订单也没有的情况
if frmDataDm.FunCheckTopTradeSameBuyerNickReceiverAddressTidExistAndGetXuhao_adoq.isEmpty then
begin
Exit('1');
end else begin
Exit(frmDataDm.FunCheckTopTradeSameBuyerNickReceiverAddressTidExistAndGetXuhao_adoq.FieldByName('max_top_xuhao').AsString);
end;
而应该用下面红色的来判断:
//判断一下是否为空,解决如果top_trade表中一个订单也没有的情况
if frmDataDm.FunCheckTopTradeSameBuyerNickReceiverAddressTidExistAndGetXuhao_adoq.FieldByName('max_top_xuhao').AsString = '' then
begin
Exit('1');
end else begin
Exit(frmDataDm.FunCheckTopTradeSameBuyerNickReceiverAddressTidExistAndGetXuhao_adoq.FieldByName('max_top_xuhao').AsString);
end;
开发过程中 偶尔遇见这个bug终于调试成功.delphi 的调试工具还是很好用的
本文来自博客园,作者:del88,转载请注明原文链接:https://www.cnblogs.com/del88/archive/2011/12/16/2290758.html