.NET

Gérer les bases de données

Après avoir créé une connexion, vous pouvez la sélectionner en cliquant sur l’action Select Connection (Sélectionner la connexion) dans la grille des connexions. La connexion sera alors représentée par une sorte d’onglet externe appelé onglet de connexion (Connection Tab). Et l’ensemble de cette zone est appelé la fenêtre de travail (Workspace Window).

Sections de la fenêtre Workspace

Cette interface comporte plusieurs éléments :

Onglet externe de connexion

L’onglet externe nommé PostgreSQL — testdb porte ce nom en raison de l’alias (PostgreSQL) que nous avons donné à la connexion vers la base de données testdb. Cet onglet est un onglet externe de connexion (Connection Outer Tab). Remarquez le petit onglet avec une croix à côté de l’onglet externe PostgreSQL — testdb. Il permet de créer un nouvel onglet externe qui sera automatiquement un onglet externe de connexion. En revanche, l’onglet externe Snippets est fixe et sera toujours le premier.

Un nouvel onglet externe de connexion pointera toujours automatiquement vers la première connexion de votre liste de connexions à des bases de données. Ou, si vous avez cliqué sur l’action Select Connection, il pointera vers la connexion sélectionnée. Observez les éléments à l’intérieur de cet onglet :

Travailler avec des bases de données

Regardez votre sélecteur de connexions. OmniDB pointe toujours vers la première connexion disponible, mais vous pouvez la changer en cliquant sur le sélecteur.

Sélectionnez la connexion PostgreSQL. Allez maintenant dans l’arborescence juste en dessous du sélecteur et cliquez pour développer le nœud racine PostgreSQL.

Gardez à l’esprit que, toutes les 30 minutes passées sans effectuer d’action sur la base de données, une fenêtre contextuelle d’authentification apparaîtra, signifiant que le mot de passe chiffré par OmniDB et conservé en mémoire a maintenant expiré. Comme expliqué précédemment, ceci est important pour la sécurité de votre base de données. Après avoir saisi le mot de passe correct, vous verrez que le nœud PostgreSQL affiche désormais la version de PostgreSQL et a également été développé, montrant la connexion active à la base de données ainsi que les éléments propres à l’instance : Databases (Bases de données), Tablespaces, Roles (Rôles) et Replication Slots (Slots de réplication).

Vous pouvez vous connecter à une seule base de données PostgreSQL et, en utilisant la même connexion, vous connecter à d’autres bases de données sur la même instance PostgreSQL. La base de données actuellement active est indiquée en dessous du sélecteur de connexion.

Pour vous connecter à une autre base de données, développez le nœud correspondant à cette base de données. Une fenêtre contextuelle apparaîtra vous demandant si vous souhaitez vraiment changer la base de données active.

Cliquez sur Yes (Oui) et OmniDB changera la base de données active pour celle que vous avez choisie. Cela se reflétera dans l’indicateur Active database (Base de données active), ainsi que dans le nom de l’onglet externe.

Développez maintenant le nœud Schemas (Schémas). Vous verrez tous les schémas de la base de données courante (dans le cas de PostgreSQL, les schémas TOAST et temporaires ne sont pas affichés).

Cliquez maintenant pour développer le schéma public. Vous verrez différents types d’éléments contenus dans ce schéma.

Cliquez maintenant pour développer le nœud Tables, et vous verrez toutes les tables contenues dans le schéma public. Développez n’importe quelle table et vous verrez ses colonnes, sa clé primaire, ses clés étrangères, ses contraintes, ses index, ses règles, ses déclencheurs et ses partitions.

Pour visualiser les enregistrements d’une table, faites un clic droit dessus et choisissez Data Actions > ; Query Data (Actions sur les données > ; Interroger les données).

Remarquez qu’OmniDB ouvre un nouvel éditeur SQL avec une requête simple pour lister les enregistrements de la table. Les enregistrements s’affichent dans une grille juste en dessous de l’éditeur. Cette grille peut être contrôlée au clavier, comme dans un tableur. Vous pouvez également copier des données d’une seule cellule ou d’un bloc de cellules (sélectionnable au clavier ou à la souris) et les coller dans n’importe quel tableur.

Vous pouvez modifier la requête dans l’éditeur SQL, en écrivant des requêtes simples ou plus complexes. Pour l’exécuter, cliquez sur le bouton d’action ou appuyez sur la combinaison de touches Alt-Q. Si les résultats dépassent 100 enregistrements, des boutons supplémentaires Fetch More (Récupérer plus) et Fetch All (Tout récupérer) apparaîtront. Plus de détails dans les chapitres suivants.

Travailler avec plusieurs onglets au sein d’une même connexion

À l’intérieur d’une même connexion, vous pouvez créer plusieurs onglets Requête internes en cliquant sur le dernier petit onglet portant une croix, puis en choisissant Query Tab (Onglet Requête).

Dans OmniDB, vous pouvez exécuter plusieurs instructions et procédures SQL en parallèle. Pendant l’exécution, une icône s’affiche dans l’onglet pour indiquer son état actuel. Si un traitement se termine alors qu’il ne se trouve pas dans l’onglet courant, cet onglet affichera une icône verte indiquant que la routine qui y était exécutée est désormais terminée.

En cliquant sur le bouton Cancel (Annuler), vous pouvez annuler un traitement en cours d’exécution dans la base de données.

Vous pouvez également glisser-déposer un onglet pour modifier son ordre. Cela fonctionne aussi bien pour les onglets internes que pour les onglets externes.

De plus, vous pouvez utiliser des raccourcis clavier pour gérer les onglets internes (Requête SQL). Voici les raccourcis par défaut sous Windows/Linux (macOS remplace Ctrl par Alt) ; ils peuvent tous être réassignés dans l’onglet Shortcuts (Raccourcis) de la fenêtre Paramètres :

Il n’existe actuellement aucun raccourci clavier pour les onglets externes (de connexion) — utilisez le glisser-déposer pour les réordonner, ou la souris, pour ceux-ci.

Tous les onglets Requête SQL sont automatiquement enregistrés chaque fois que vous les exécutez. Même si vous fermez la fenêtre d’OmniDB ou l’onglet du navigateur, ils sont déjà stockés dans la base de données utilisateur d’OmniDB. Ils seront automatiquement restaurés lorsque vous rouvrirez OmniDB (si vous utilisez l’application), lorsque vous l’ouvrirez dans une autre fenêtre de navigateur (si vous utilisez la version serveur), ou même si vous avez cliqué sur la fenêtre Connections ou si vous vous êtes déconnecté. Supprimer un onglet externe ou interne via l’interface le supprime définitivement, il ne sera donc pas restauré.