Bonjour,
Je tente par code d'ajouter un enregistrement à une table nommée Infosvue d'une base SQLITE3 (Base1.db3) dans un programme Lazarus ( version 1.4.2. sous W7). Les données que je souhaite ajouter sont dans un tableau unidimensionnel (valtab [1], valtab[2] valtab [3]). Les colonnes de la table qui a pour nom InfosVUe ont pour en-tête de champ les noms Archiv, Nom1, Prenom1
nota : une autre partie du programme qui elle, fonctionne bien, me permet d'actualiser les valeurs associées aux variables du tableau et qui sont toutes des Strings.
Pour cela je construit la variable RequetAjout suivante :
et je modifie la valeur du SQL d'un ZQQuery par :
Code : Sélectionner tout - Visualiser dans une fenêtre à part RqtAjoutAB := 'Insert Into Infosvue ( Archiv, Nom1, Prenom1 ) Values ( quotedStr(Valtab[1]), quotedStr(Valtab[2]), quotedStr(valtab[3]) )' ;
où ZC_Cree1 et ZQ_Cree1 sont les composants Zeos associés à la base de nom complet DnomBaseA.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 ZC_Cree1.Connected := False ; ZC_Cree1.Database := DnomBaseA ; ZC_Cree1.Connected := True ; ZQ_Cree1.SQL.Clear ; // Mise à zéro de la chaine SQL ZQ_Cree1.SQL.Text := RqtAjoutAB ; ZQ_Cree1.ExecSQL ;
Ce code me renvoie une erreur SQL à l’exécution et pourtant toutes les variables existent bien.
Cela fait plusieurs heures que je tente de résoudre le problème sans succès.
D'autre part, est-il utile, prudent, nécessaire (?) de fermer l'accès à la table par unune fois l'ajout effectué
Code : Sélectionner tout - Visualiser dans une fenêtre à part ZQ_Cree1.Close ;
Partager