Bonjour,
J'ai une erreur que je n'arrive pas à résoudre.
je et une requete sql dans une variable, que j'execute ensuite grace à un database.execute()
Comme ceci :
J'ai voulu comprendre le fonctionnement d'Execute() et quelque genre de message elle renvoi.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 procedure TFrmPrincipal.Button7Click(Sender: TObject); var commande_sql : string; begin commande_sql := 'LOAD DATA INFILE "' + '//opt//appli//donnees//spool//referentiel//' + 'toto.csv" INTO TABLE matable FIELDS TERMINATED BY '';'' ENCLOSED BY ''"'' ESCAPED BY ''\\'' LINES TERMINATED BY ''\r\n'''; FrmPrincipal.Database1.Execute(commande_sql); showmessage('fichier importé.'); end;
J'ai donc mis le retour dans une variable integer.
Comme ceci :
Et bien ce code ne fonction ne pas et me renvoi une erreur de violation d'accés.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 procedure TFrmPrincipal.Button7Click(Sender: TObject); var commande_sql : string; recup := integer; begin commande_sql := 'LOAD DATA INFILE "' + '//opt//appli//donnees//spool//referentiel//' + 'toto.csv" INTO TABLE matable FIELDS TERMINATED BY '';'' ENCLOSED BY ''"'' ESCAPED BY ''\\'' LINES TERMINATED BY ''\r\n'''; recup := FrmPrincipal.Database1.Execute(commande_sql); showmessage('fichier importé.'+ inttostr(recup)); end;
Je précise que ce message n'apparait que lorsque la variable recup est integer. Sinon ça ne compile pas
Voir l'image ce dessous.
Merci de votre aide et de prendre sur votre temps.
Partager