mallek-ahmed / Git-Repo

0 stars 0 forks source link

Exemple plsql create synonymes #1

Open mallek-ahmed opened 1 year ago

mallek-ahmed commented 1 year ago

DECLARE v_table_name VARCHAR2(30); v_syn_name VARCHAR2(30); BEGIN -- Boucle sur toutes les tables de l'utilisateur 'NOM_UTILISATEUR' FOR t IN (SELECT table_name FROM all_tables WHERE owner = 'NOM_UTILISATEUR') LOOP v_table_name := t.table_name; v_synname := 'SYN' || v_table_name;

  -- Vérifie si le synonyme existe déjà
  BEGIN
     EXECUTE IMMEDIATE 'DROP SYNONYM ' || v_syn_name;
  EXCEPTION
     WHEN OTHERS THEN NULL;
  END;

  -- Crée un synonyme pour la table si le synonyme n'existe pas déjà
  EXECUTE IMMEDIATE 'CREATE SYNONYM ' || v_syn_name || ' FOR NOM_UTILISATEUR.' || v_table_name;

END LOOP; END; /