Bonjour,
Dans mon programme, j'interroge ma base de données avec des requêtes de type SELECT. Jusque là tout va bien.
Par contre, lorsque j'essaie de faire une requête de type DELETE, là je coince.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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;
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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;
Partager