SQL Server 2016 pour les administrateurs IT

Comprendre les schémas

Testez gratuitement nos 1304 formations

pendant 10 jours !

Tester maintenant Afficher tous les abonnements
Dans une base de données, les schémas sont des modules qui encapsulent des objets comme les tables. Dans cette vidéo, vous comprendrez le rôle des schémas.
05:56

Transcription

Dans la norme SQL, c'est-à-dire le standard qui a été défini par un comité et qui est une norme ISO, qui définit le langage SQL et les objets qui sont utilisés dans des bases de données SQL, dans cette norme, il est défini trois niveaux. Je vous les écris ici. Le premier niveau s'appelle un serveur. On a ici un serveur de base de données, c'est ça. Deuxième niveau : on a un catalogue. On appelle ça chez nous une base de données. Il y a un troisième niveau : le schéma. On a ici des schémas, les préfixes. Mettons-nous bien d'accord. Le terme de « schéma », « schema » en anglais, correspond à ceci. Lorsque vous voyez ici marqué : « Schémas de bases de données », au premier niveau, sur le premier dossier, il ne s'agit pas du tout de ça, c'est un problème de traduction, une fois de plus. En anglais, cette section est appelée « Diagram ». Il ne s'agit pas d'un schéma comme ceci, il s'agit d'un diagramme de base de données, quelque chose de graphique. Les traducteurs pour le français chez Microsoft ont appelé les deux objets différents avec le même nom français. C'est dommage parce que c'est très troublant. Souvenez-vous bien : ceci ne correspond pas à cela. On cache ça, on n'en parle même pas, et revenons à nos moutons. On a donc un serveur qui a des bases de données. Dans les bases de données, on a un ou plusieurs schémas. On va le mettre au pluriel. À l'intérieur de « Schémas », on peut avoir des tables, on peut avoir des vues, on peut avoir des procédures dont on a parlé, etc. Mais une table n'est pas directement au niveau de la base de données. Elle doit être contenue dans un schéma. C'est quoi un schéma ? Quelque chose qui est purement un nom, une boîte, un conteneur. Si vous êtes développeur, on appelle ça souvent un « name space », un espace de nom. Quelque chose dans lequel on va placer des objets. Physiquement, le serveur existe. C'est une application, un processus qui s'exécute sur une machine. La base de données, on peut dire qu'elle existe physiquement puisqu’on a vu que c'était des fichiers sur le disque. Par contre, le schéma n'existe pas physiquement, c'est juste un nom. Je pourrais créer un schéma dans ma base de données « PachaDataFormation ». Je vais commenter tout ça. Commenter, ça veut dire que je vais mettre des caractères spécifiques qui vont permettre de faire en sorte que ce code est ignoré par le serveur SQL. Je vais faire un « CREATE SCHEMA coucou ». Vous voyez que c'est très simple : je crée un schéma, c'est réalisé. Maintenant je peux créer une table dans le schéma « coucou » donc je la préfixe par « coucou » et je vais l'appeler « client », par exemple. Je créé une table. Pour créer une table, je suis obligé de mettre au moins une colonne avec un type de donnée. C'est ce que je fais ici. Lorsque j'ai créé mon schéma, je n'ai rien fait de physique, je n'ai pas créé de fichier sur le disque, j'ai juste dit : dans cette base de données, crée-moi un espace dans lequel je peux placer des objets. Maintenant si je regarde mes tables et que je rafraîchis surtout, je vais trouver ici une table préfixée par « coucou ». Vous voyez que toutes ces tables appartiennent au même schéma, à l'intérieur de la base de données « PachaDataFormation ». Elles sont toutes préfixées par « Contact ». Pourquoi faire des schémas ? Parce que ça permet de regrouper un certain nombre d'objets dans la base de façon logique, mais aussi d'attribuer des permissions groupées à ces objets si vous voulez qu'un utilisateur ait les permissions de lire tous les objets du schéma « Contact », toutes les tables du schéma « Contact ». C'est une façon de simplifier la gestion des permissions. À la base, vous pouvez très bien ne pas utiliser du tout de schémas. Il y a un schéma par défaut. Si vous créez une base de données et vous créez des tables en ne les préfixant pas comme ceci, sans même vous occuper de créer un schéma, elles seront créées avec le préfixe « dbo », pour une raison historique : « dbo » veut dire depuis très longtemps dans SQL Server « DATABASE OWNER », le propriétaire d'une base de données. Le concept de schéma a été introduit dans SQL Server pour respecter la norme SQL dans SQL Server 2005. Avant, il y avait des propriétaires d'objets. Le propriétaire par défaut, c'était cette sorte d'utilisateur virtuel qui s'appelle « database owner » et qui correspond à tous les administrateurs de la base de données. Lorsque Microsoft a créé les schémas en 2005, il a repris le terme « dbo », « database owner », comme schéma par défaut, de façon à ne pas casser les structures anciennes. « dbo », ça va être votre schéma par défaut. Lorsque vous créez une table sans mettre de schéma, vous appelez votre table « dbo.client ». Vous pouvez très bien faire un « SELECT * FROM client » et SQL Server comprend très bien qu'il faut aller chercher « dbo.client ». Si vous gérez, comme je le fais dans ma base de données « PachaDAtaFormation », plusieurs schémas, alors il vaut vraiment mieux, c'est presque obligatoire, préfixer par le schéma. Par exemple, je veux lire la table « Contact ». Il faut que je dise quel est, dans le schéma, « Contact », et donc je dois le préfixer. La décision d'utiliser ou non des schémas, c'est comme vous voulez. Si vous créez vos propres bases de données c'est vous qui décidez. Par contre, si vous héritez de bases de données, parce que vous avez acheté une application, par exemple, il faudra vous adapter.

SQL Server 2016 pour les administrateurs IT

Comprenez le fonctionnement et les différents modules qui composent SQL Server. Prenez en main les bases de données, les schémas, les tables, la gestion des fichiers, etc.

5h20 (55 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Spécial abonnés
Date de parution :14 mars 2017

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !