PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Comment changer le schéma de plusieurs tables PostgreSQL en une seule opération ?

DO fera l'affaire :

DO
$$
DECLARE
    row record;
BEGIN
    FOR row IN SELECT tablename FROM pg_tables WHERE schemaname = 'public' -- and other conditions, if needed
    LOOP
        EXECUTE 'ALTER TABLE public.' || quote_ident(row.tablename) || ' SET SCHEMA [new_schema];';
    END LOOP;
END;
$$;