SAP HANA - Synonyme SQL

SQL Synonymes est un alias pour une table ou un objet Schema dans une base de données. Ils sont utilisés pour protéger les applications clientes des modifications apportées au nom ou à l'emplacement d'un objet.

Les synonymes permettent aux applications de fonctionner indépendamment de l'utilisateur qui possède la table et de la base de données qui contient la table ou l'objet.

L'instruction Create Synonym est utilisée pour créer un synonyme pour une table, une vue, un package, une procédure, des objets, etc.

Exemple

Il existe une table Customer of efashion, située sur un Server1. Pour y accéder à partir de Server2, une application cliente devrait utiliser le nom Server1.efashion.Customer. Maintenant, nous changeons l'emplacement de la table Client, l'application cliente devra être modifiée pour refléter le changement.

Pour y remédier, nous pouvons créer un synonyme de table Customer Cust_Table sur Server2 pour la table sur Server1. Alors maintenant, l'application cliente doit utiliser le nom en une seule partie Cust_Table pour référencer cette table. Maintenant, si l'emplacement de cette table change, vous devrez modifier le synonyme pour qu'il pointe vers le nouvel emplacement de la table.

Comme il n'y a pas d'instruction ALTER SYNONYM, vous devez supprimer le synonyme Cust_Table, puis recréer le synonyme avec le même nom et pointer le synonyme vers le nouvel emplacement de la table Customer.

Synonymes publics

Les synonymes publics appartiennent au schéma PUBLIC dans une base de données. Les synonymes publics peuvent être référencés par tous les utilisateurs de la base de données. Ils sont créés par le propriétaire de l'application pour les tables et autres objets tels que les procédures et les packages afin que les utilisateurs de l'application puissent voir les objets.

Syntaxe

CREATE PUBLIC SYNONYM Cust_table for efashion.Customer;

Pour créer un synonyme PUBLIC, vous devez utiliser le mot-clé PUBLIC comme indiqué.

Synonymes privés

Les synonymes privés sont utilisés dans un schéma de base de données pour masquer le vrai nom d'une table, d'une procédure, d'une vue ou de tout autre objet de base de données.

Les synonymes privés peuvent être référencés uniquement par le schéma propriétaire de la table ou de l'objet.

Syntaxe

CREATE SYNONYM Cust_table FOR efashion.Customer;

Supprimer un synonyme

Les synonymes peuvent être supprimés à l'aide de la commande DROP Synonym. Si vous supprimez un synonyme public, vous devez utiliser le mot-clépublic dans l'instruction drop.

Syntaxe

DROP PUBLIC Synonym Cust_table;
DROP Synonym Cust_table;