Ma requête SQL DELETE ne fonctionne pas
Bonjour,
Dans mon programme, j'interroge ma base de données avec des requêtes de type SELECT. Jusque là tout va bien.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| // Initialisation de la base de données
IHM_FenetrePrincipale.IHM_DbSqliteConnection.DatabaseName:= DB_FileName;
IHM_FenetrePrincipale.IHM_DbSqliteConnection.Connected := True;
IHM_FenetrePrincipale.IHM_DbSqliteQuery.SQL.Clear;
// Requete sql pour obtenir tous les Noms
IHM_FenetrePrincipale.IHM_DbSqliteQuery.SQL.Add('SELECT DISTINCT "Nom" FROM table ORDER BY "Nom" ASC');
IHM_FenetrePrincipale.IHM_DbSqliteQuery.ExecSQL;
IHM_FenetrePrincipale.IHM_DbSqliteQuery.Active:= true;
// Ajout des noms dans le chklistbox
while not IHM_FenetrePrincipale.IHM_DbSqliteQuery.EOF do
begin
IHM_FenetrePrincipale.IHM_ChklistboxNom.Items.Add(IHM_FenetrePrincipale.IHM_DbSqliteQuery.FieldByName('Nom').AsString);
IHM_FenetrePrincipale.IHM_DbSqliteQuery.Next;
end;
// Fermeture de la base de données
IHM_FenetrePrincipale.IHM_DbSqliteQuery.Close;
IHM_FenetrePrincipale.IHM_DbSqliteConnection.Close; |
Par contre, lorsque j'essaie de faire une requête de type DELETE, là je coince.
Je n'ai pas de message d'erreur et aucun enregistrement n'est effacé.
La requête que j'envoie fonctionne très bien avec SQLITEMAN
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| req := req + '"' + tag_checked[i] + '"';
// Initialisation de la base de données pour requete
IHM_FenetrePrincipale.IHM_DbSqliteConnection.DatabaseName:= DB_FileName;
IHM_FenetrePrincipale.IHM_DbSqliteConnection.Connected := True;
IHM_FenetrePrincipale.IHM_DbSqliteQuery.SQL.Clear;
// Execution de la requete
IHM_FenetrePrincipale.IHM_DbSqliteQuery.SQL.Add(req);
IHM_FenetrePrincipale.IHM_DbSqliteQuery.Prepare;
ShowMessage(req);
IHM_FenetrePrincipale.IHM_DbSqliteQuery.ExecSQL;
// Fermeture de la base de données
IHM_FenetrePrincipale.IHM_DbSqliteQuery.Close;
IHM_FenetrePrincipale.IHM_DbSqliteConnection.Close; |