Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
Pages : 1
#1 31/01/2012 17:47:12
- thedigital
- Membre
Scripting plpgsql
Bonjour à tous,
pour un de mes projets, je souhaite pouvoir faire du scripting plpgsql mais sans passer par la création de fonction.
Est ce possible ?
Si ce n'est pas possible, existe-t-il une autre solution pour tester l'existence d'un schéma avant de le créer. (sans utiliser de fonction stockée)
En gros j'aimerais faire :
SI schema n'existe pas ALORS
CREER schema
FIN SI
Hors ligne
#2 31/01/2012 18:02:18
- thedigital
- Membre
Re : Scripting plpgsql
Bonjour, je viens de trouver finalement.
Depuis la version 9.0, Postgresql intègre une instruction DO qui permet d'éxécuter un bloc de code et permet donc de scripter sans creer de fonctions.
http://www.postgresql.org/docs/9.1/static/sql-do.html
Dans mon cas ca donne quelque chose du style:
DO LANGUAGE plpgsql $$
BEGIN
IF NOT EXISTS(SELECT * FROM pg_namespace WHERE nspname = 'affiliation_0') THEN
CREATE SCHEMA affiliation_0 AUTHORIZATION postgres;
GRANT ALL ON SCHEMA affiliation_0 TO postgres;
END IF;
END$$;
Très pratique ce DO
Bonne journée tout le monde
Hors ligne
#3 31/01/2012 18:02:57
- gleu
- Administrateur
Re : Scripting plpgsql
Est ce possible ?
Oui, à partir de la version 9.0, en utilisant l'instruction DO (http://docs.postgresql.fr/9.1/sql-do.html).
Si ce n'est pas possible, existe-t-il une autre solution pour tester l'existence d'un schéma avant de le créer. (sans utiliser de fonction stockée)
Il faut le faire du côté applicatif. IF n'est pas une instruction SQL.
Guillaume.
Hors ligne
#4 31/01/2012 18:06:17
- Marc Cousin
- Membre
Re : Scripting plpgsql
Depuis la 9.0, oui, c'est possible: regardez la doc de 'DO'
http://docs.postgresql.fr/9.0/sql-do.html
Marc.
Hors ligne
#5 31/01/2012 18:07:17
- Marc Cousin
- Membre
Re : Scripting plpgsql
Mouarf, je ne suis qu'un pâle echo de gleu
Marc.
Hors ligne
#6 31/01/2012 19:05:54
- thedigital
- Membre
Re : Scripting plpgsql
... qui n'est lui même qu'un pale echo de moi meme si ca te rassure
Cependant je vous remercie tout deux pour votre rapidité
Hors ligne
#7 31/01/2012 19:26:34
- gleu
- Administrateur
Re : Scripting plpgsql
:-D
Guillaume.
Hors ligne
Pages : 1