Mysql
 sql >> Database >  >> RDS >> Mysql

Definizioni dello schema da DBMS

Diversi sistemi di gestione del database definiscono schema a modo loro. Ciò può rendere difficile per gli sviluppatori di database capire esattamente che cos'è uno schema, soprattutto quando si passa da un DBMS all'altro.

Questo articolo fornisce le definizioni utilizzate dai tre principali sistemi di database.

 MySQL

La documentazione MySQL definisce uno schema sia dal punto di vista concettuale che fisico.

Concettuale

Concettualmente, uno schema è un insieme di oggetti di database correlati, come tabelle, colonne di tabelle, tipi di dati delle colonne, indici, chiavi esterne e così via. Questi oggetti sono collegati tramite la sintassi SQL, perché le colonne costituiscono le tabelle, le chiavi esterne si riferiscono a tabelle e colonne e così via. Idealmente, sono anche collegati logicamente, lavorando insieme come parte di un'applicazione unificata o di un framework flessibile. Ad esempio, lo schema_informativo e schema_performance i database usano "schema" nei loro nomi per enfatizzare le strette relazioni tra le tabelle e le colonne che contengono.

Fisico

Si fa poi notare che, dal punto di vista fisico, non c'è distinzione tra schemi e database:

In MySQL, fisicamente, uno schema è sinonimo di database . Puoi sostituire la parola chiave SCHEMA invece di DATABASE nella sintassi SQL di MySQL, ad esempio usando CREATE SCHEMA invece di CREATE DATABASE .

Fonte: "Glossario MySQL". MySQL 5.7 Manuale di riferimento. MySQL. Estratto il 6 giugno 2016.

SQL Server

Glossario

Schema database

I nomi di tabelle, campi, tipi di dati e chiavi primarie ed esterne di un database.

Fonte: "Glossario". Documentazione tecnica di SQL Server 2016. Rete di sviluppatori Microsoft. Estratto il 6 giugno 2016.

Articolo tecnico su SQL Server

Questo articolo sugli schemi degli oggetti del database traccia esplicitamente la distinzione tra un utente del database e uno schema (questo è in contrasto con il modo in cui Oracle definisce gli schemi, di seguito).

Uno schema è uno spazio dei nomi distinto per facilitare la separazione, la gestione e la proprietà degli oggetti del database.

e

Un oggetto di proprietà di un utente del database non è più legato a quell'utente. L'oggetto ora appartiene a uno schema, un contenitore che può contenere molti oggetti di database.

e

Questa separazione significa che gli oggetti e gli schemi possono essere creati prima che gli utenti vengano aggiunti al database. Significa anche che un utente può essere eliminato senza rilasciare specificamente gli oggetti di proprietà di quell'utente.

Fonte: "Procedure consigliate per SQL Server:implementazione di schemi di oggetti di database". Articolo Microsoft TechNet. Pubblicato:novembre 2008. Estratto il 6 giugno 2016.

Database Oracle

Il sistema dello schema di Oracle Database è abbastanza diverso dagli altri sistemi. Lo schema di Oracle è molto legato all'utente del database.

Uno schema è una raccolta di strutture logiche di dati o oggetti dello schema. Uno schema è di proprietà di un utente del database e ha lo stesso nome di quell'utente. Ogni utente possiede un singolo schema.

Oracle distingue tra oggetti schema e oggetti non schema . Quindi, in altre parole, alcuni oggetti di database non possono essere inclusi in uno schema.

Oggetti Schema

In Oracle Database, oggetti schema includere quanto segue:

  • Cluster
  • Vincoli
  • Link al database
  • Attivatori di database
  • Dimensioni
  • Librerie di procedure esterne
  • Tabelle organizzate per indici
  • Indici
  • Tipi di indice
  • Classi Java, risorse Java, sorgenti Java
  • Viste materializzate
  • Registri delle viste materializzate
  • Modelli minerari
  • Tabelle degli oggetti
  • Tipi di oggetti
  • Viste degli oggetti
  • Operatori
  • Pacchetti
  • Sequenze
  • Funzioni memorizzate, procedure memorizzate
  • Sinonimi
  • Tabelle
  • Viste

Oggetti non schema

In Oracle Database, i seguenti oggetti sono oggetti non schema :

  • Contesti
  • Elenchi
  • Edizioni
  • Punti di ripristino
  • Ruoli
  • Segmenti di rollback
  • Spazi tabella
  • Utenti

Fonte: "Oggetti di database". Documentazione Oracle Database Online 12c Release 1 (12.1). Centro assistenza Oracle. Estratto il 6 giugno 2016.