Date: prev next · Thread: first prev next last
2018 Archives by date, by thread · List index


j'arrive en retard...

et effectivement, je viens de lire ça à l'instant aussi dans la doc sur le
after et before...

:)

Le 16 avril 2018 à 20:46, Thierry Jeanneret <thierry.jeanneret@gmail.com> a
écrit :

Bonsoir,

En fait la réponse se trouve ici : https://stackoverflow.com/
questions/21753266/hsqldb-create-trigger-throws-
exception-wrong-or-missing-data-impact-clause-in-d <
https://stackoverflow.com/questions/21753266/hsqldb-create-trigger-throws-
exception-wrong-or-missing-data-impact-clause-in-d>

Je n'avais pas vraiment compris la sémantique du BEFORE ou AFTER. En
définissant le trigger comme AFTER j'obtiens exactement ce que je veux,
tout va bien. Je peux donc poursuivre avec mon petit bricolage sans trop de
soucis ;-)

Bonne soirée, merci de votre temps,

Thierry



Le 16 avr. 2018 à 20:40, Thierry Jeanneret <thierry.jeanneret@gmail.com>
a écrit :

Bonsoir Robert,

J'ai fait une première approche du côté de PostgreSQL, mais HSQLDB offre
l'avantage de me permettre de récupérer les données sans aucun souci. Et
puis, le volume est si faible…

Quant à MariaDB, j'ai essayé de comprendre ce qu'il faut faire pour
l'installer sur le Mac et y accéder depuis LibreOffice mais là, j'ai calé.
Si vous avez un fil rouge qui fonctionne, je suis prêt à tenter
l'expérience…

Thierry


Le 16 avr. 2018 à 20:11, Robert Cabane <robert.cabane@free.fr <mailto:
robert.cabane@free.fr>> a écrit :

Bonsoir,
Pour des raisons de portabilité, il est bien préférable d'utiliser des
gestionnaires de bases de données très répandus comme mysql ou postgresql.
L'un et l'autre se connectent avec Libreoffice au moyen d'un connecteur
nommé JDBC. Un avantage est de pouvoir facilement exporter la base
(mysqldump et pg_dump), ce qui permet de sécuriser les opérations. Un autre
avantage est que ces deux systèmes sont très amplement documentés.
Bonjour,

J'essaie de convertir une base HSQLDB intégrée en standalone server.
J'ai
réussi à récupérer les données, à établir le lien avec le fichier
intermédiaire .odb et à récupérer les formulaires existants. Tout va
bien,
et ça va beaucoup plus vite, grâce en grande partie à la doc de
Jean-François Nifenecker.

MAIS : Mon but initial était de bénéficier d'un trigger
d'historisation, qui
à chaque modification des données d'une table enregistre la valeur
avant
modification (donc un trigger BEFORE UPDATE si je ne fais erreur).

Et ça ne fonctionne pas... Voici la syntaxe que j'utilise sur deux
tables
test :

CREATE TRIGGER "BeforUpdateTable1" BEFORE UPDATE
ON "Table1" FOR EACH ROW
INSERT INTO "HistTable1" ("Ligne1", "Ligne2", "ID")
VALUES (OLD."Ligne1", OLD."Ligne2", OLD.ID)

Lorsque j'exécute cette commande depuis l'utilitaire SQL de LibreOffice
(Base), j'obtiens ce message :

1: user lacks privilege or object not found: OLD.Ligne1

J'ai installé SQuirreL et j'ai réussi à le faire démarrer sur MacOS
(mais
ceci est une autre histoire). Lorsque je saisis la même instruction
dans
SQuirreL, j'obtiens exactement le même message.

J'ai essayé un peu tous les formats d'instruction, avec ou sans OLD,
avec ou
sans guillemets, j'ai créé une table dont les noms de colonnes sont
tout en
majuscule, rien n'y fait, c'est toujours le même message.

Je dois avoir les privilèges voulus, puisque je suis en principe
connecté SA
et que j'ai créé une colonne IDENTITE sans problème...

Bref, avez-vous une idée ? Est-ce raisonnable de vouloir utilise
HSQLDB pour
cela ? Ai-je meilleur temps de passer carrément à PostgreSQL ? Pour
2-3000
lignes dans quatre ou cinq tables, ça m'a l'air d'être de l'overkill,
mais
si vraiment...

Ma version de HSQLDB est 2.4. Au fait, pourquoi n'est-ce pas cette
version
qui est intégrée dans LibreOffice ?




--
Robert Cabane
Inspecteur général honoraire de l’éducation nationale
Portable : 06 51 96 80 48



--
Envoyez un mail à users+unsubscribe@fr.libreoffice.org pour vous
désinscrire
Les archives de la liste sont disponibles à https://listarchives.
libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et
ne pourront pas être supprimés




-- 
web site : http://www.molenbaix.com

-- 
Envoyez un mail à users+unsubscribe@fr.libreoffice.org pour vous désinscrire
Les archives de la liste sont disponibles à https://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne pourront pas être 
supprimés

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.