1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
procedure TMainForm.ExecuteSQL(const aSQL, aOutputFileName : string);
var
aProcess : TProcess;
aStringList : TStringList;
begin
aProcess := TProcess.Create(nil);
aStringList := TStringList.Create;
// Initialiser ta ligne de commande
AProcess.CommandLine :=
'psql -d DB_MOSAIC -U postgres -h 196.217.240.103 -w motdepasse -c '''
+aSQL+'''';
// Demander d'attendre la fin d'execution et lire le retour
aProcess.Options := AProcess.Options + [poWaitOnExit, poUsePipes];//, poStderrToOutPut];
// Executer le process
aProcess.Execute;
// Récupérer le flux de données
aStringList.LoadFromStream(AProcess.Output);
// Sauvegarde de la sortie dans un fichier
aStringList.SaveToFile(aOutputFileName);
//Libérer les instances d'objets
aStringList.Free;
aProcess.Free;
end; |
Partager