Mysql
 sql >> Base de données >  >> RDS >> Mysql

Définitions de schéma par SGBD

Différents systèmes de gestion de base de données définissent le schéma à leur manière. Cela peut rendre difficile pour les développeurs de bases de données de déterminer exactement ce qu'est un schéma, en particulier lors du basculement entre différents SGBD.

Cet article fournit les définitions utilisées par les trois principaux systèmes de base de données.

 MySQL

La documentation MySQL définit un schéma à la fois d'un point de vue conceptuel et physique.

Conceptuel

Conceptuellement, un schéma est un ensemble d'objets de base de données interdépendants, tels que des tables, des colonnes de table, des types de données des colonnes, des index, des clés étrangères, etc. Ces objets sont connectés via la syntaxe SQL, car les colonnes constituent les tables, les clés étrangères font référence aux tables et aux colonnes, etc. Idéalement, ils sont également connectés logiquement, travaillant ensemble dans le cadre d'une application unifiée ou d'un cadre flexible. Par exemple, le information_schema et performance_schema les bases de données utilisent "schéma" dans leurs noms pour souligner les relations étroites entre les tables et les colonnes qu'elles contiennent.

Physique

On précise ensuite que, d'un point de vue physique, il n'y a pas de distinction entre schémas et bases de données :

Dans MySQL, physiquement, un schéma est synonyme de base de données . Vous pouvez remplacer le mot-clé SCHEMA au lieu de DATABASE dans la syntaxe MySQL SQL, par exemple en utilisant CREATE SCHEMA au lieu de CREATE DATABASE .

Source : "Glossaire MySQL". Manuel de référence MySQL 5.7. MySQL. Consulté le 6 juin 2016.

SQL Server

Glossaire

Schéma de base de données

Les noms des tables, des champs, des types de données et des clés primaires et étrangères d'une base de données.

Source : "Glossaire". Documentation technique SQL Server 2016. Réseau de développeurs Microsoft. Consulté le 6 juin 2016.

Article technique sur SQL Server

Cet article sur les schémas d'objets de base de données établit explicitement la distinction entre un utilisateur de base de données et un schéma (ceci contraste avec la façon dont Oracle définit les schémas – ci-dessous).

Un schéma est un espace de noms distinct pour faciliter la séparation, la gestion et la propriété des objets de base de données.

et

Un objet appartenant à un utilisateur de base de données n'est plus lié à cet utilisateur. L'objet appartient maintenant à un schéma - un conteneur qui peut contenir de nombreux objets de base de données.

et

Cette séparation signifie que des objets et des schémas peuvent être créés avant que les utilisateurs ne soient ajoutés à la base de données. Cela signifie également qu'un utilisateur peut être supprimé sans supprimer spécifiquement les objets appartenant à cet utilisateur.

Source : " Bonnes pratiques SQL Server – Mise en œuvre de schémas d'objets de base de données". Article MicrosoftTechNet. Publié :novembre 2008. Consulté le 6 juin 2016.

Base de données Oracle

Le système de schéma d'Oracle Database est assez différent des autres systèmes. Le schéma d'Oracle est très lié à l'utilisateur de la base de données.

Un schéma est un ensemble de structures logiques de données ou d'objets de schéma. Un schéma appartient à un utilisateur de base de données et porte le même nom que cet utilisateur. Chaque utilisateur possède un seul schéma.

Oracle fait la distinction entre les objets de schéma et objets non schématiques . En d'autres termes, certains objets de base de données ne peuvent pas être inclus dans un schéma.

Objets de schéma

Dans Oracle Database, objets de schéma inclure les éléments suivants :

  • Groupes
  • Contraintes
  • Liens de base de données
  • Déclencheurs de base de données
  • Dimensions
  • Bibliothèques de procédures externes
  • Tableaux organisés en index
  • Index
  • Types d'index
  • Classes Java, ressources Java, sources Java
  • Vues matérialisées
  • Journaux des vues matérialisées
  • Modèles de minage
  • Tableaux d'objets
  • Types d'objets
  • Vues d'objets
  • Opérateurs
  • Forfaits
  • Séquences
  • Fonctions stockées, procédures stockées
  • Synonymes
  • Tableaux
  • Vues

Objets non schématiques

Dans Oracle Database, les objets suivants sont des objets non schématiques :

  • Contextes
  • Répertoires
  • Éditions
  • Points de restauration
  • Rôles
  • Segments d'annulation
  • Tablespaces
  • Utilisateurs

Source : "Objets de base de données". Documentation en ligne de la base de données Oracle 12c version 1 (12.1). Centre d'aide Oracle. Consulté le 6 juin 2016.