.NET

Écrire des requêtes SQL

Le type d’onglet interne le plus courant est l’onglet Requête, qui contient les éléments suivants. Les raccourcis clavier ci-dessous sont les valeurs par défaut sous Windows/Linux ; sur macOS, les raccourcis propres à OmniDB utilisent Ctrl au lieu d’Alt. Tous peuvent être modifiés sous Paramètres > Raccourcis.

A Query tab with the SQL editor, toolbar and results

Le séparateur entre l’éditeur (avec sa barre d’outils) et les résultats peut être déplacé pour donner davantage de place à l’un ou à l’autre.

Confirmation de sécurité pour les instructions destructrices

Avant d’exécuter une instruction commençant par DROP ou TRUNCATE, ou un UPDATE/DELETE sans clause WHERE, l’onglet Requête demande une confirmation (Cette instruction est destructrice et ne peut pas être annulée. L’exécuter quand même ?, ou Cette instruction n’a pas de clause WHERE et affectera TOUTES les lignes. L’exécuter quand même ?). Il s’agit d’un garde-fou contre les erreurs de bonne foi, pas d’un système de permissions — seul le début du texte (après les commentaires) est examiné.

Une fois exécutés, les onglets sont également enregistrés dans la base de données utilisateur d’OmniDB (titre et contenu) : ainsi, à la prochaine ouverture d’OmniDB, vous les retrouverez tous ouverts. De plus, chaque commande exécutée dans un onglet Requête est enregistrée dans l’historique des commandes de cette connexion.

Autocomplétion SQL

L’éditeur SQL propose une fonctionnalité très utile lors de la création de nouvelles requêtes : la complétion automatique du code SQL. Ouvrez les suggestions avec Ctrl-Space (Option-Space sur macOS). Elle permet de compléter automatiquement les colonnes d’une table référencée par un alias : tapez l’alias, le caractère ., puis ouvrez l’autocomplétion :

Autocomplete after a table alias

Si l’utilisateur démarre l’autocomplétion avec le curseur éloigné de tout alias de table, le composant affiche plusieurs catégories de données. En saisissant du texte dans le champ de filtre, les éléments de toutes les catégories sont filtrés :

Autocomplete offering all categories

Le composant d’autocomplétion est également capable d’identifier certaines informations contextuelles. Par exemple, si vous saisissez le nom d’un schéma, puis le caractère ., vous pourrez filtrer uniquement parmi les objets contenus dans ce schéma :

Autocomplete after a schema name

Après :: (un transtypage PostgreSQL), seuls les types de données sont proposés. Le choix d’un mot-clé ajoute également ce qui le suit toujours (par exemple une espace après SELECT, ou la parenthèse ouvrante après COALESCE). Les catégories proposées (mots-clés, bases de données, rôles, tablespaces, schémas, extensions, tables, vues, colonnes, fonctions, index) se règlent sous Paramètres > Autocomplétion.

Veuillez noter que pour les SGBD autres que PostgreSQL, le composant d’autocomplétion ne fonctionne que pour les colonnes de tables.