Vous n'êtes pas identifié(e).
Bonjour,
dans le cadre d'un traitement de contrôle qualité sur mes données, je suis amené à exécuter près de 250 requêtes régulièrement. Actuellement, je fait ça à partir d'un source que je lance avec "psql -f".
N'y a t'il pas moyen de stocker les requêtes dans une table et de les exécuter à partir de cette dernière ? que faire s'il y a des paramètres à passer dans la requête ? Je souhaiterai également stocker les résultats dans une autre table (N° du dossier, Identifiant de la requête positive).
Bref, toutes pistes sur l'intérêt et la façon de réaliser ça sera bienvenue.
Cordialement
PS : si je ne suis pas clair, n'hésitez pas à le faire savoir.
Hors ligne
Bonjour.
Vous pouvez bien sûr stocker tout ça dans une table.
Ensuite, il vous faudra (je pense que c'est le plus simple), exécuter ces requêtes dans une procédure stockée en plpgsql, ou alors avec une application cliente, qui parcourra cette table et exécutera ce qu'elle y trouvera.
Par contre, si c'est votre question, il n'y a pas un 'exécuteur de requête' dans la base, qui ferait tout le travail dont nous venons de parler de façon automatisée.
Marc.
Hors ligne
Bonjour,
bon, c'est bien ce à quoi je pensait alors. Une procédure stockée me convient parfaitement. On va essayer de faire ça.
connaissez vous un projet libre avec ce type de chose que je puisse aller m'inspirer du code ?
sous quelle forme dois-je stocker mes requêtes ? un simple varchar suffirat-il ?
Cordialement
Hors ligne
Oui, un simple varchar ou text suffira dans un premier temps.
Autre possibilité, vous pouvez utiliser pgagent pour ça. C'est un outil capable de déclencher des requêtes SQL ou des scripts shell (unix ou windows) à certaines dates ou à certains intervalles. pgAdmin est à utiliser pour le configurer facilement.
Guillaume.
Hors ligne
Super,
merci beaucoup, je vais creuser tout ça.
Cordialement
Hors ligne