Prise en charge des schémas

Vous pouvez configurer le système Netezza Performance Server pour supporter plusieurs schémas dans une base de données. Par défaut, le comportement n'autorise qu'un seul schéma, qui correspond au nom de l'utilisateur qui a créé la base de données. La variable enable_schema_dbo_check détermine si le système permet aux utilisateurs de créer et de gérer plusieurs schémas dans une base de données et, le cas échéant, les actions que le système entreprend lorsqu'il traite une requête dont le schéma n'est pas valide :

  • 0: permet au système d'ignorer tout schéma spécifié par l'utilisateur et d'utiliser le schéma par défaut. Le système n'autorise pas les commandes permettant de définir, de créer ou de gérer des objets de schéma.
  • 1: permet la prise en charge de plusieurs schémas en mode limité. Les utilisateurs peuvent créer, modifier, définir et supprimer des schémas. Si une requête fait référence à un schéma non valide, le système affiche un message d'avertissement et utilise le schéma actuel de la session de base de données ou le schéma par défaut d'une base de données pour les requêtes inter-bases de données.
  • 2 (par défaut) : active la prise en charge de plusieurs schémas. Les utilisateurs peuvent créer, modifier, définir et supprimer des schémas. Si une requête fait référence à un schéma non valide, la requête renvoie une erreur. Il s'agit de la valeur par défaut.

Vous pouvez définir la variable enable_schema_dbo_check dans le fichier 'postgresql.conf et vous devez redémarrer le logiciel Netezza Performance Server pour que le changement prenne effet. Pour plus d'informations sur le paramétrage de la variable, voir le Guide de l'administrateur du systèmeIBM® Netezza®.

La variable enable_user_schema est définie par défaut sur FALSE, ce qui signifie que si les utilisateurs ne spécifient pas de schéma lorsqu'ils se connectent à une base de données, le système les connecte au schéma par défaut de la base de données. Si enable_user_schema est défini sur TRUE, le système les connecte à un schéma qui correspond au nom de l'utilisateur de la base de données, et crée ce schéma s'il n'en existe pas dans la base de données.