uses
SynCommons, SynDB, SynOleDB;
procedure TForm1.DataToJsonClick(Sender: TObject);
var
Conn: TOleDBMSSQLConnectionProperties;
strSql: string;
rows: ISQLDBRows;
strStream: TStringStream;
begin
Conn := TOleDBMSSQLConnectionProperties.Create('127.0.0.1', 'Northwind', 'sa', 'Sa123');
strSql := 'SELECT EmployeeID,LastName,FirstName,Title FROM Employees';
strStream:=TStringStream.Create('',TEncoding.UTF8);
try
rows := Conn.ExecuteInlined(strSql, True);
rows.FetchAllToJSON(strStream, True);
Memo1.Text := strStream.DataString;
finally
strStream.Free;
end;
end;