TDataViewsQuery.SelectAsCSV

TDataViewsQuery = class (TObject)Interface de TDataViewsQueryExemples de TDataViewsQuery

Qubes 6.8 Extraction en CSV

Syntaxe

Prototype changé!!! class function SelectAsCSV(select: String; separator: String = ','; initialDVName: String = ''): String (Qubes 9.0)
class function SelectAsCSV(const select: String; separator: String = ','): String
const select: Requête SQL
separator: caractère de séparation des données

Remarques

Fonction pour extraire des données des vues maintenues au format CSV.
Le séparateur est la virgule (,). select est la requête SQL que l'on souhaite exécuter.
La requête peut inclure des jointures entre plusieurs vues maintenues.
La requête doit être en lecture seulement. Les INSERT, UPDATE, DELETE, ... ne sont pas autorisés.
Le nom des tables dans la requête est le nom qui a été donnée aux vues maintenues lors de leurs créations.
Il s'agit d'une classe fonction, elle s'utilise directement en faisant TDataViewsQuery.SelectAsCSV(....). Il ne faut pas instancier d'objet du type TDataViewsQuery.

Exemples

uses SysUtils, QubesDataViews, QubesDataViewsSources.Processus, QubesDataViewsSources.Lots, QubesDataViewsQuery;

// création vue des lots
var srcLots := TDataViewSourceLots.Create([]);
var dvLot := DeclareView('Lots', srcLots, ['LOT_GPAO_ID=GPAO_ID', 'ITEM_GPAOID']);

// creattion vue processus
var srcProcessus := TDataViewSourceProcessus.Create(cProcessLIMSRUD, ['DateLancement float=DateLancement', 'NomControle String=Variables.NomControle', 'numeroLot String=Paramètres.numeroLot']);
var dvLIMSProcessus := DeclareView('Processus', srcProcessus, ['ExecutionNo', 'Status', 'NomControle', 'numeroLot', 'DateLancement']);

// initialisation des vues
srcLots.Restart(dvLot);
srcProcessus.Restart(dvLIMSProcessus);

// requête jointure entre vues des lots et processus
var queryResult := TDataViewsQuery.SelectAsCSV('select p.NomControle, p.DateLancement, l.* from Processus p join Lots l on l.LOT_GPAO_ID=p.numeroLot'));

Classification

QubesDataViewsQuery TDataViewsQuery