{得到一条SQL语句中第一条记录的值 输入:sDBName 数据库名(如 DBBankCard.DatabaseName) sSQLString SQL命令 输出:当返回真时vValue数组中存放值 }function GetSQLValue(oDatabase: TDatabase; sSQLString: string; var vValue: variant): Boolean; var __Query: TQuery; __i, __j: Integer; begin Result := False; DBErrorMessage := ''; __Query := QuerySQL(oDatabase, sSQLString); if Assigned(__Query) then begin try if not __Query.IsEmpty then begin __j := __Query.FieldCount; if __j = 1 then vValue := __Query.Fields[0].Value else begin vValue := VarArrayCreate([0, __j - 1], varVariant); for __i := 0 to __j - 1 do vValue[__i] := __Query.Fields[__i].Value; end; Result := True; end; except on E: Exception do DBErrorMessage := E.Message; end; __Query.Free; end; end;
ShowMessage(VarToStr(Query['field']));
何必...?
输入:sDBName 数据库名(如 DBBankCard.DatabaseName)
sSQLString SQL命令
输出:当返回真时vValue数组中存放值
}function GetSQLValue(oDatabase: TDatabase; sSQLString: string; var vValue: variant): Boolean;
var
__Query: TQuery;
__i, __j: Integer;
begin
Result := False;
DBErrorMessage := '';
__Query := QuerySQL(oDatabase, sSQLString);
if Assigned(__Query) then begin
try
if not __Query.IsEmpty then begin
__j := __Query.FieldCount;
if __j = 1 then vValue := __Query.Fields[0].Value
else begin
vValue := VarArrayCreate([0, __j - 1], varVariant);
for __i := 0 to __j - 1 do vValue[__i] := __Query.Fields[__i].Value;
end;
Result := True;
end;
except
on E: Exception do DBErrorMessage := E.Message;
end;
__Query.Free;
end;
end;