Comment puis-je énumérer tous les schémas dans PostgreSQL?

Comment puis-je énumérer tous les schémas dans PostgreSQL?
PostgreSQL est une base de données rationnelle et fiable. De nombreuses fonctionnalités de PostgreSQL la différencient des autres bases de données. Le schéma postgresql est une propriété qui permet à l'utilisateur de maintenir et d'organiser les objets dans la base de données actuelle et de les gérer en groupes logiques. Les schémas actuellement existants sont également consultés dans le PSQL et le pgadmin. Pour enrôler tous les schémas de Postgresql, il existe de nombreuses approches. Nous en avons principalement utilisés pour expliquer dans cet article. Pour comprendre ce dilemme, vous devez suivre certaines étapes de prérequis comme:

Installez PostgreSQL sur votre système et configurez-le. Après une installation réussie et la configuration de PostgreSQL, confirmez-la en vérifiant sa version sur le PSQL. Lorsque vous avez installé la base de données, vous pouvez maintenant l'utiliser car vous avez des privilèges pour y accéder. Si vous avez une certaine connaissance des bases de données, il vous sera favorable pour que vous compreniez les schémas. Ouvrez maintenant PSQL et appliquez le mot de passe pour l'utilisateur pour la connectivité du serveur.

La première méthode montre l'utilisation de «\ dn» dans le terminal PSQL. Cette méthode ne montre pas tous les noms des schémas. Il montre le propriétaire des schémas et leur description, créé par public ou temporaire.

>> \ dn;

Cette sortie montre que le schéma est public et que le propriétaire du schéma est «Postgres».

La deuxième méthode est l'utilisation de l'instruction «SELECT» dans la commande. Cette requête est utilisée pour afficher tous les noms du schéma actuellement présents dans PostgreSQL. Cette requête récupère le nom du schéma à partir du stockage principal de données de tous les schémas.

Cette requête aide à afficher tous les schémas. Maintenant, 4 schémas sont présents ici.

De même, si vous êtes prêt à connaître le schéma de la table temporaire, une chose doit être mentionnée ici que nous ne créons pas de schéma séparé pour la table temporaire car elle est elle-même créée par Postgres. Nous pouvons le montrer en utilisant la commande ci-dessous

>> \ d;

Le résultat montre les noms des tables avec le schéma. Pour les livres de relations, le schéma est public, ce qui signifie qu'il s'agit d'une table créée en permanence. Et pour le tableau «Tableau 1», il est stocké dans PG_TEMP_10, ce qui signifie que le tableau est temporaire. Toutes les tables temporaires sont stockées dans le schéma «pg_temp_10».

Une autre façon consiste à afficher le schéma avec des ID et des rôles alloués au schéma. «Join» est utilisé pour lier deux tables ici. Cette jointure se fait au point où l'ID système est équivalent à l'ID du propriétaire.

>> Sélectionner S.nspname comme schéma_table, s.oid as id_schema, u.usename comme rôle de PG_CATALOG.PG_NAMESPACE S JOIN PG_CATALOG.pg_user u sur u.useSysid = s.Ordre nspowner par schema_table;

Tous les schémas sont affichés en montrant les rôles qui leur sont appliqués, qui sont les «Postgres». Si vous souhaitez modifier le propriétaire, cela peut être fait en créant un nouvel utilisateur et en leur accordant tous les privilèges.

Une autre façon d'enrôler le schéma peut être obtenue en appliquant une déclaration conditionnelle où le nom du schéma ne doit pas être présent dans tous les autres schémas comme PG_CATALOG, etc., donc le nom qui reste est mentionné dans la sortie.

Le schéma qui a été laissé est «ABC». La sortie montre également le rôle et id_schema. Certains sont des tables définies par l'utilisateur. Ces tableaux sont répertoriés dans le schéma «public».

Pour afficher toutes les tables créées par l'utilisateur dans le schéma, nous utilisons ici une instruction «Sélectionner» et une clause «où» qui vérifie l'état de non a été inclus dans «pg_catalog» et «information_schema». Comme la base de données créée publiquement est «ABC», il n'est donc pas inclus ici. Cette commande affichera également d'autres fonctionnalités comme la sécurité des lignes et l'espace de table, mais maintenant ce ne sont pas notre préoccupation.

Pour afficher le nom du schéma actuel, utilisez la commande simple suivante.

>> sélectionnez current_schema ();

Cela montre que le schéma actuel est «public».

Pour rechercher le propriétaire ou pour mentionner les rôles qui contrôlent le schéma, nous utilisons un chemin de recherche pour afficher le schéma actuel avec le nom du propriétaire.

>> Show Search_Path;

Si vous voulez savoir comment le nouveau schéma est créé, c'est assez simple.

>> créer un schéma nouveau;

Une fois le nouveau schéma créé, définissez maintenant le chemin vers le schéma nouvellement créé. Cela se fait en affectant le chemin du schéma du public au nouveau schéma.

>> Définissez Search_Path sur new, public;

Vérifiez maintenant le fonctionnement du schéma en créant un nouveau tableau «N_TB»

>> créer la table n_tb (ID Integer, nom varchar (20));

Pour sélectionner les données dans la nouvelle table que vous avez créée, nous utilisons l'instruction SELECT. Vous devez être familier avec l'utilisation des instructions sélectionnées directement sur le tableau. Mais ce tableau est accessible par le nom du schéma suivant le nom du tableau.

>> Sélectionner * dans le nouveau.n_tb;

Maintenant transférer tous les privilèges du nouveau schéma au public.

>> Définissez Search_Path au public;

Nous voulons autoriser l'instruction «Créer» au nouveau schéma avec le nom d'utilisateur. Vous pouvez également utiliser toutes les autres déclarations sur lesquelles vous souhaitez appliquer les privilèges.

>> Grant Create on Schema Nouveau sur Postgres;

Après avoir travaillé sur le schéma, si vous souhaitez le supprimer de la base de données, nous avons besoin d'une commande «Drop». L'utilisation de la commande «Drop» directement sur le schéma affichera une erreur car nous n'avons pas de schéma vide.

>> Drop schéma nouveau;

Une relation est présente dans ce schéma. Nous devons supprimer tout le contenu pour supprimer toutes les traces du schéma

>> Drop Schema New Cascade;

Via pgadmin

Ouvrez le tableau de bord "Pgadmin". Établir une connexion avec le serveur en fournissant le mot de passe.

Tout d'abord avant d'appliquer les requêtes, nous montrerons le schéma que nous avons créé récemment. Se déplacer vers la barre latérale gauche du tableau de bord. Développez la base de données «Postgres». De plus, élargissez l'option «schémas». Sélectionnez maintenant le schéma nouvellement créé «nouveau».

Dans le «nouveau» schéma, vous verrez de nombreuses options ici. Maintenant, sélectionnez les tables et développez-les. Vous verrez le «n_tb» que nous créons.

Comme nous l'avons décrit précédemment, il existe deux types: défini par l'utilisateur et l'autre est des schémas système. Lorsque nous élargissons la base de données, nous venons avec les deux schémas. Pour voir les schémas du système, puis étendre l'option des catalogues. Cette liste de schémas est le schéma du système. Tandis que pour les schémas utilisateur, élargissez les options de schémas. Celui qui est marqué comme «vert» dans l'image ci-dessous.

Pour créer un nouveau schéma dans Pgadmin, cliquez sur les schémas, sélectionnez la première option «Créer» et sélectionnez à nouveau «schéma».

une boite de dialogue s affiche. Remplissez en fournissant les détails.

Conclusion

«Comment puis-je énumérer tous les ACHEMAS dans PostgreSQL» nous fournit la solution pour trouver la liste des schémas actuellement utilisés. Les informations concernant les schémas actuelles et la procédure de création de nouveaux schémas sont décrites dans cet article. Tandis que le tableau de bord permet à l'utilisateur de créer un schéma par la méthode simple «GUI». J'espère que cet article sera le meilleur guide pour votre perspective future.