Le multi-schemas : 1 user possédant N schemas

La norme SQL évolue : tirez le meilleur d'un SGBD qui la respecte en écrivant du SQL moderne avec en complément PL/pgSQL, php, java etc.
Répondre
Phil
Administrateur du site
Messages : 292
Enregistré le : mar. 1 sept. 2015 00:38
Localisation : France
Contact :

Le multi-schemas : 1 user possédant N schemas

Message par Phil »

Merci à un DBA Oracle pour sa question :

"Dans votre présentation des nouvelles fonctionnalités Oracle 23c, vous dites qu'Oracle ne supporte pas le multi-schémas mais ce n'est pas standard SQL ... De temps en temps vous racontez que c'est bien de respecter le standard et parfois c'est mal."

Réponse :

Le multi-schémas est dans le standard SQL-2008, c'est optionnel mais c'est une fonctionnalité listée (F171). Implémenter le multi-schémas est donc standard SQL et les développeurs utilisant PostgreSQL peuvent parfaitement en tirer parti tout en restant conformes à ce standard.
Oracle n'implémente pas cette fonctionnalité optionnelle mais cela va plus loin. Schéma = utilisateur même en 23c. Vous ne pouvez pas supprimer un schéma sans supprimer l'utilisateur, par exemple. Un utilisateur ne peut pas supprimer son schéma mais seulement dynamiquement les objets qui lui appartiennent. Vous ne pouvez pas non plus renommer un schéma. Oracle joue sur la confusion entre schéma et utilisateur en utilisant le mot clé "SCHEMA", notamment dans les nouvelles fonctionnalités 23c mais les schémas ne sont toujours pas réellement implémentés. Avant de penser au multi-schémas, il s'agirait donc déjà pour Oracle d'implémenter le "mono-schéma" à 100% car ça c'est "core" (obligatoire) en SQL-2008. L'instruction "CREATE SCHEMA" d'Oracle Database, largement méconnue, existe mais ne crée pas réellement un schéma, elle permet juste de regrouper quelques instructions DDL pour qu'elles soient globalement validées ou annulées.
Cdlt. Phil - pgphil.ovh
Répondre