Retour à la liste des articles Articles
10 minutes de lecture

Termes SQL essentiels à connaître pour les débutants et les professionnels

Travailler avec des bases de données peut sembler décourageant pour une personne non technique. Tout de suite, vous êtes bombardé de nouveaux termes qui vous font tourner la tête. Base de données, instance de base de données, table, SQL et autres sont quelques-uns des termes de base que vous devez comprendre pour avoir une conversation normale avec vos collègues techniciens. Dans cet article, nous allons explorer la terminologie de base des bases de données SQL que vous devez connaître pour réussir.

Imaginez que vous assistiez à une réunion avec le personnel de développement et que vous ayez soudain l'impression d'écouter un bruit de fond. Vous comprenez ce qu'est un "fichier", mais tous ces autres termes que vos collègues vous lancent sont incompréhensibles. Ne vous inquiétez pas, nous avons ce qu'il vous faut.

To start things off, visualize a large office building teeming with activity. Let’s say it’s owned by a fictitious company called SQL Inc. This company’s building has standard architecture with doors, windows, elevators, etc. The building, with all its corporate life, will serve as our analogy for a database to simplify explaining SQL terminology.

Bases des bases de données

Systèmes de gestion des bases de données

Commençons par la terminologie SQL de base. SQL Inc. possède de nombreux bâtiments (bases de données) du même type dispersés dans le monde entier. Et lorsque vous voyez l'un de ces bâtiments, vous savez qu'il est géré par SQL Inc. Il en va de même pour les systèmes de gestion de bases de données (SGBD). Comme leur nom l'indique, ces systèmes gèrent des bases de données ! Ils sont nombreux et vont des grands acteurs du marché comme Oracle, Microsoft SQL Server et IBM DB2 à d'autres comme MySQL, PostgreSQL, etc. Les SGBD les plus importants sont surtout utilisés par les grandes entreprises qui ont besoin du support et des fonctionnalités qu'offrent les outils de niveau entreprise. Les autres sont utilisés dans les petites entreprises et les projets open-source.

Transactions de base de données

Il existe de nombreux termes SQL liés aux bases de données. Un autre est celui de transaction de base de données. En termes simples, le travail d'une base de données consiste à créer, lire, mettre à jour et supprimer des données. Dans notre bâtiment SQL Inc., cela est analogue à la gestion de documents d'entreprise que vous remplissez, lisez, corrigez et jetez. Tout comme il n'existe qu'une seule version pertinente d'un certain document dans l'entreprise, il n'existe qu'une seule version pertinente et véridique des données dans une base de données (par exemple, qu'il n'existe qu'une seule version du manifeste des employés qui est répliqué de nombreuses fois dans un bâtiment de SQL Inc.) Les bases de données garantissent qu'il n'existe qu'une seule version pertinente des données par le biais de transactions. Lorsque l'électricité est coupée dans notre bâtiment, tout le travail est sauvegardé sous forme de papier. Lorsque l'électricité est coupée dans une base de données qui fonctionne, le modèle transactionnel de la base de données garantit que, lorsqu'elle est remise sous tension, la base de données peut revenir à un état stable antérieur.

Fichiers de la base de données

À la fin d'une journée de travail chargée, tout le monde rentre chez soi et notre bâtiment reste vide. Mais le travail que le personnel a produit pendant la journée n'est pas perdu : il est archivé à différents endroits dans le bâtiment. Il en va de même pour notre base de données. Si nous mettons notre base de données hors ligne, un terme que nous utilisons pour la mise hors tension régulière du système, les données sont toujours sécurisées dans nos fichiers de base de données.

Instance de base de données

Notre personnel est occupé à travailler pendant la journée, à modifier et à créer des documents. Leur flux de travail est fluide et actif ; de nombreux employés effectuent différentes tâches tout au long de la journée. Ce flux de travail n'est "vivant" que pendant les heures de travail, et c'est le seul processus qui peut modifier les documents stockés dans notre bâtiment. De même, l'ensemble des processus qui gèrent les fichiers d'une base de données, et donc la base de données elle-même, forme une instance de base de données. En termes plus techniques, une instance de base de données est un ensemble de processus et de structures de mémoire temporaire qui permettent au système de base de données de fonctionner.

Serveur de base de données et client

Un bâtiment de SQL Inc. consolide ses fichiers et les envoie pour être consultés par des personnes extérieures à l'organisation du bâtiment. Diverses parties extérieures, entreprises et autres entités reçoivent des fichiers papier de notre bâtiment. De cette façon, notre bâtiment interagit avec le monde extérieur des affaires. De même, une base de données possède un serveur qui communique avec le client extérieur. Nous avons généralement un serveur de base de données (un bâtiment de SQL Inc.), à un endroit donné, et de nombreux clients de base de données, les parties extérieures, qui interagissent avec la base de données de plusieurs façons. Le client peut, et le fait généralement, manipuler les données de la base de données en communiquant avec le serveur. Vous devez vous rappeler que SQL Inc. possède de nombreux bâtiments dans le monde entier et, par analogie, un fournisseur de bases de données possède également de nombreuses bases de données (avec des serveurs et des clients).

Pour mieux comprendre la terminologie des bases de données SQL, lisez la section consacrée au serveur de base de données et au client de base de données. Ici.

Structured Query Language, le langage des bases de données

Passons maintenant à l'essentiel de la terminologie SQL. La communication d'entreprise doit être directe et sans ambiguïté. Elle a ses propres règles - quelqu'un pourrait même l'appeler un langage ! La division de l'entreprise communique avec le monde extérieur dans ce langage professionnel. Le langage que nous utilisons pour communiquer avec une base de données s'appelle SQL, c'est-à-dire Structured Query Language. Ce langage est beaucoup plus simple que l'anglais. La base de données sait exactement ce qu'elle doit faire avec les données lorsqu'elle reçoit une commande en SQL, tout comme notre division sait ce qu'elle doit faire lorsqu'elle reçoit ses ordres de la direction centrale.

Mots clés

Le langage commercial d'une organisation suit certaines règles ou normes communes. De même, le langage SQL dispose d'un ensemble de mots réservés. Ces mots doivent être utilisés d'une certaine manière ; ils ne peuvent pas être utilisés pour nommer des objets dans la base de données. Nous appelons ces mots des mots-clés. Exemples de mots-clés SQL : CREATE, INSERT, GRANT, UPDATE, DELETE, SELECT, etc.

Langage de définition des données et langage de manipulation des données

Lorsque la division centrale a besoin de mettre en œuvre un nouveau type de fichier en tant que modèle, elle envoie ce modèle à toutes les divisions de l'entreprise. De même, lorsque nous devons définir la structure de nouveaux objets de base de données (comme une nouvelle table), nous émettons une instruction DDL (langage de définition des données). Pour alimenter les modèles avec les données réelles de l'entreprise, la division centrale envoie un nouvel ensemble de commandes. Ce processus de modification des données alimentées dans les feuilles de calcul est un sous-ensemble du SQL appelé DML (langage de manipulation des données).

Les données de nos bases de données sont représentées sous forme de tableaux. Nous voyons nos données de base de données comme des tableaux avec des lignes et des colonnes. Les tableaux représentent certaines entités, comme sales, dans notre bâtiment. Ces sales ont certains attributs, tels que la date de vente, le montant et le numéro de vente. Ces attributs représentent les colonnes de nos tables, tandis que les lignes représentent les différentes ventes. Il peut y avoir de nombreuses tables différentes dans une base de données, et elles sont liées les unes aux autres, comme sales et items_sold. Cette relation est la raison pour laquelle les bases de données traditionnelles sont appelées bases de données relationnelles.

Prenons un exemple. Avec une instruction DDL, nous créons une table de ventes:

CREATE TABLE sales (
	id NUMBER,
	amount NUMBER,
	sales_date DATE
);

Nous alimentons la table avec des ventes à l'aide de DML :

INSERT INTO TABLE sales (id, amount, sales_date) VALUES (1,100,’2018-01-10);
INSERT INTO TABLE sales (id, amount, sales_date) VALUES (2,500,’2018-02-10);
INSERT INTO TABLE sales (id, amount, sales_date) VALUES (3,250,’2018-03-10);

Pour extraire ces données de la table, nous lançons une requête SELECT (qui fait partie de DML) :

SELECT id, amount, sales_date;

Instructions et requêtes

D'autres termes SQL à connaître ? Vous vous demandez probablement pourquoi certaines instructions destinées aux bases de données sont appelées instructions et d'autres requêtes. La réponse est simple. Une requête demande à une base de données de renvoyer des données sous une forme ou une autre. Cette interrogation des données est généralement le travail le plus important qu'une base de données effectue pour un utilisateur. D'autre part, une instruction est une instruction générique adressée à la base de données. Cela inclut la création et la suppression de tables, l'insertion et la suppression de données, etc. Nous pouvons donc conclure que toutes les requêtes sont des instructions et que toutes les instructions ne sont pas des requêtes.

Clauses, prédicats et expressions

Reprenons notre exemple des déclarations SELECT ci-dessus. Si nous voulions voir uniquement les ventes du10 janvier, nous développerions notre requête comme suit :

SELECT id, amount, date_time WHERE date_time = ‘2018-01-10’;

La partie WHERE de notre instruction représente une clause SQL facultative. Les instructions SQL sont construites à partir de clauses facultatives et obligatoires, tout comme les phrases de la langue anglaise. Les clauses sont des mots-clés en SQL qui vous permettent de demander une certaine action en fonction de certaines conditions qui doivent être satisfaites. Dans notre clause WHERE, ces conditions sont des questions que nous posons à la base de données. Par exemple, la date de la vente est-elle le10 janvier ? Cette question est soit vraie, soit fausse. Nous appelons cette question (condition) un prédicat. Le type de question que nous posons est une expression. Dans notre exemple, le prédicat est du type égalité car nous demandons si la date est égale à une certaine valeur. Si nous avions plutôt demandé toutes les dates postérieures au10 janvier, nous aurions eu une expression de comparaison comme prédicat de la clause WHERE de la requête.

Fonctions et procédures

Les derniers termes SQL essentiels à connaître sur notre liste sont les fonctions et les procédures. Imaginons que la direction de SQL Inc. confie une tâche répétitive au personnel de notre bâtiment. Par exemple

  1. prendre ce rapport ;
  2. classez-le dans un autre bâtiment ; et
  3. dites-moi combien de temps cela vous a pris.

Il serait plus efficace que la direction dise simplement à la division d'exécuter ce processus avec une seule commande. Dans les bases de données, les processus qui peuvent être répétés autant de fois que nécessaire sont appelés fonctions ou procédures. Les fonctions renvoient toujours un résultat de leur exécution. Dans notre exemple, la fonction file_report renvoie le temps qu'il lui a fallu pour exécuter cette tâche. En revanche, les procédures ne renvoient aucune valeur - elles font simplement ce qu'on leur demande.

Conclusion

Cet article a présenté un bref aperçu des termes SQL les plus couramment utilisés dans le monde des bases de données. Nous avons abordé les bases de l'architecture des bases de données : fichiers, instances de base de données, transactions et communication client-serveur. SQL est également un langage très puissant et complet que nous utilisons pour communiquer avec les bases de données. Nous avons également abordé les termes SQL à connaître liés à des sujets tels que DML, DDL, instructions, mots-clés, requêtes et clauses.

Bien entendu, la connaissance de la terminologie des bases de données SQL ne représente que la moitié de la bataille. L'autre moitié consiste à les appliquer. En tant que langage de programmation de quatrième génération, SQL est incroyablement facile et amusant à apprendre. Que vous soyez débutant ou que vous ayez déjà des connaissances de base, une excellente façon d'apprendre SQL est de suivre notre cours interactif sur la plateforme SQL pour les débutants cours sur la plate-forme LearnSQL.fr. Tentez votre chance !