mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-06 00:10:19 +02:00
* AffectedRows now is a QWord (to match recent MySQL versions)
* Result strings for enums etc. are now correctly terminated * Fixed a memory leak in DoQuery: The query string didn't get released
This commit is contained in:
parent
da271ad1ba
commit
4e8a1790e6
@ -37,7 +37,7 @@ type
|
||||
FServerInfo: string;
|
||||
FHostInfo: string;
|
||||
|
||||
FAffectedRows: Integer;
|
||||
FAffectedRows: QWord;
|
||||
FLastInsertID: Integer;
|
||||
FLoadingFieldDefs: Boolean;
|
||||
|
||||
@ -112,7 +112,7 @@ type
|
||||
property ServerInfo: string read FServerInfo;
|
||||
property ClientInfo: string read GetClientInfo;
|
||||
property HostInfo: string read FHostInfo;
|
||||
property AffectedRows: Integer read FAffectedRows;
|
||||
property AffectedRows: QWord read FAffectedRows;
|
||||
property LastInsertID: Integer read FLastInsertID;
|
||||
property ServerStatus: string read GetServerStatus;
|
||||
published
|
||||
@ -216,8 +216,12 @@ begin
|
||||
Move(CurBuf^, PChar(Buffer)^, MySQLDataSize(fld.ftype, fld.length));
|
||||
|
||||
if Field.DataType in [ftString{, ftWideString}] then
|
||||
Result := PChar(buffer)^ <> #0
|
||||
else
|
||||
begin
|
||||
Result := PChar(buffer)^ <> #0;
|
||||
if Result then
|
||||
// Terminate string (necessary for enum fields)
|
||||
PChar(buffer)[fld.length] := #0;
|
||||
end else
|
||||
Result := True;
|
||||
break;
|
||||
end
|
||||
@ -758,11 +762,15 @@ end;
|
||||
|
||||
procedure TMySQLDataset.DoQuery;
|
||||
var
|
||||
Query: string;
|
||||
Query: PChar;
|
||||
begin
|
||||
Query := FSQL.GetText;
|
||||
if mysql_query(FMYSQL, PChar(Query)) <> 0 then
|
||||
DatabaseError(mysql_error(FMYSQL));
|
||||
try
|
||||
if mysql_query(FMYSQL, Query) <> 0 then
|
||||
DatabaseError(mysql_error(FMYSQL));
|
||||
finally
|
||||
StrDispose(Query);
|
||||
end;
|
||||
|
||||
FAffectedRows := mysql_affected_rows(FMYSQL);
|
||||
FLastInsertID := mysql_insert_id(FMYSQL);
|
||||
@ -789,8 +797,16 @@ begin
|
||||
end;
|
||||
|
||||
end.
|
||||
|
||||
|
||||
{
|
||||
$Log$
|
||||
Revision 1.2 2002-09-07 15:15:23 peter
|
||||
Revision 1.3 2002-11-07 14:27:59 sg
|
||||
* AffectedRows now is a QWord (to match recent MySQL versions)
|
||||
* Result strings for enums etc. are now correctly terminated
|
||||
* Fixed a memory leak in DoQuery: The query string didn't get released
|
||||
|
||||
Revision 1.2 2002/09/07 15:15:23 peter
|
||||
* old logs removed and tabs fixed
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user