Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
Pages : 1
#1 Re : PL/pgSQL » Exécuter script plpgsql dans un fichier.sql » 24/05/2017 11:22:28
l'instruction DO à bien été utilisée en début du script.
#2 PL/pgSQL » Exécuter script plpgsql dans un fichier.sql » 23/05/2017 10:44:22
- marco2
- Réponses : 3
peut-on exécuter du pgsql dans un fichier import.sql pour renommer les contraintes d'une table en utilisant Hibernate(jta)?
Voici mon script:
#import.sql
DO
$$
DECLARE
curs CURSOR FOR SELECT * FROM update_foreignkey_constraint;
table_row update_foreignkey_constraint%ROWTYPE;
cons REFCURSOR;
constraint_row INFORMATION_SCHEMA.KEY_COLUMN_USAGE%ROWTYPE;
BEGIN
OPEN curs;
LOOP
FETCH NEXT FROM curs INTO table_row;
EXIT WHEN NOT FOUND;
OPEN cons FOR SELECT * FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE table_name=table_row.table_name AND constraint_name LIKE'fk%' AND column_name= table_row.column_name;
FETCH NEXT FROM cons INTO constraint_row;
IF FOUND THEN
EXECUTE 'ALTER TABLE '||table_row.table_name||' RENAME CONSTRAINT '||constraint_row.constraint_name ||' TO ' ||table_row.constraint_name;
ELSE
RAISE EXCEPTION 'Nom de table introuvable : %', table_row.table_name;
END IF;
EXIT WHEN NOT FOUND;
RAISE NOTICE '%', constraint_row.constraint_name;
CLOSE cons;
END LOOP;
CLOSE curs;
DROP TABLE public.update_foreignkey_constraint;
EXCEPTION
WHEN duplicate_object THEN
DROP TABLE public.update_foreignkey_constraint;
RAISE NOTICE 'Attention, cette contrainte de clé existe (%).',table_row.constraint_name;
END;
$$;
#3 Re : Java » Exécuter script plpgsql dans un import.sql » 19/05/2017 20:17:57
oui j'ai la commande DO $$ mais quand je démarre mon serveur il me dit qu'il y'a une erreur il ne reconnaît pas la commande declare du plpgsql.
#4 Java » Exécuter script plpgsql dans un import.sql » 19/05/2017 20:06:01
- marco2
- Réponses : 3
Peut-on exécuter un fichier.sql contenant des commandes plpgsql avec hibernate pour modifier une table?
si oui un exemple de fichier.sql
Pages : 1