|
Article on other languages:
|
Il Data Definition Language (DDL) è un linguaggio che permette di creare, modificare o eliminare gli oggetti in un database. Il linguaggio DDL compone una parte del linguaggio SQL. Sono i comandi DDL a definire la struttura del database e quindi dei dati ivi contenuti. Ma non fornisce gli strumenti per modificare i dati stessi: per tale scopo di usa il Data Manipulation Language (DML). L'utente deve avere i permessi necessari per agire sulla struttura del database e questi permessi vengono assegnati tramite il Data Control Language (DCL).
DominiiCreate DomainOltre ai tipi come integer, char, float, ... possiamo crearne altri: la creazione è simile ad una ridenominazione di un tipo fondamentale visto tra quelli sopra o di un tipo creato ex-novo, ereditandone tutte le caratteristiche. Sintassi del comando Create Domain
CREATE DOMAIN nome_dominio AS tipo [ ValoreImpostato ] [ Vincolo ] { DefSchema }
Si crea un tipo di nome " NomeDominio " partendo da un precedente " Tipo ", impostando un opzionale valore di default ed un insieme di vincoli. Questa operazione permette di definire una ed una sola volta tutte le caratteristiche (vincoli) che possono essere associati ad un attributo, quando questo è utilizzato in più tabelle, evitando così ridondanze. Drop DomainElimina un dominio definito dall'utente. Sintassi del comando Drop DomainDROP DOMAIN nome_dominio [CASCADE|RESTRICT] Se si specifica CASCADE, tutte le colonne delle tabelle che appartengono a tale dominio verranno cancellate con esso. Se si specifica RESTRICT, che è il valore predefinito, questa operazione non verrà eseguita. SchemiCreate schemaLo schema è una collezione di tutti gli oggetti che faranno parte della base di dati, cioè domini, tabelle, viste, privilegi, asserzioni. È un po' come la parte dichiarativa di un programma scritto con un linguaggio imperativo: prima creiamo i tipi, le funzioni e le procedure, poi le utilizziamo nel corpo. Sintassi del comando create schema
CREATE SCHEMA [ NomeSchema ] [ [ autorization ] Autorizzazione ] { DefElementoSchema }
Autorizzazione è il nome dell'utente proprietario dello schema; se mancante si assume che sia l'utente che ha lanciato il comando. Il NomeSchema può essere omesso: in tal caso il nome sarà quello dell'utente proprietario. Per ogni utente ci sono delle Autorizzazioni cioè possiamo imporre certi limiti a chi interroga la nostra Base di dati. Drop SchemaCancella uno schema. Sintassi del comando Drop SchemaDROP SCHEMA nome_schema [CASCADE|RESTRICT] Se si specifica CASCADE, tutti gli oggetti che fanno parte dello schema verranno cancellati. Se si specifica RESTRICT, che è il valore predefinito, gli oggetti che fanno parte dello schema verranno preservati. DatabaseCreate databaseIl comando create database serve a creare un nuovo database, che potrà contenere tabelle, viste, stored procedure, trigger o altri tipi di oggetti. Sintassi del comando create databaseLa sintassi è la seguente:
CREATE {DATABASE | SCHEMA} db_name
[create_specification [, create_specification] ...]
create_specification:
[DEFAULT] CHARACTER SET charset_name
| [DEFAULT] COLLATE collation_name
Se nell'esecuzione del comando si specifica [IF NOT EXISTS] si crea il database solo se non esiste, in caso contrario non verrà restituito alcun errore. La stringa create_specification permette di inserire delle opzioni nella creazione del database. Tramite CHARACTER SET si inserisce il set di caratteri supportato nel database. Tramite COLLATE si possono definire i dati di default del database. Alter databaseIl comando alter database serve a modificare un database esistente. Non esiste nello standard SQL, ma la maggior parte dei Dbms lo implementa. Sintassi del comando alter databaseLa sintassi è la seguente:
ALTER {DATABASE | SCHEMA} [db_name]
[DEFAULT] CHARACTER SET charset_name
| [DEFAULT] COLLATE collation_name
Drop databaseIl comando drop database serve a cancellare un database. Tale comando non esiste nello standard SQL, ma tutti i Dbms lo implementano. Sintassi del comando drop databaseLa sintassi è la seguente: DROP DATABASE nome_database TabelleCreate tableIl comando create table ha la funzione di creare una nuova tabella (o tavola).
Oltre a definire gli attributi di una tabella è possibile definire dei vincoli. Vincoli d'integritàPer implementare i Vincoli di integrità con l'SQL esistono delle parole riservate. Vincoli Intrarelazionali
Vincoli InterrelazionaliPer la gestione di questo tipo di vincoli si utilizza il foreign key (ovvero chiave esterna). Questo vincolo crea un legame tra i valori di un attributo della tabella corrente e i valori di un attributo di un'altra tabella che è in relazione alla tabella corrente stessa. Il vincolo impone che per ogni riga della tabella il valore dell'attributo specificato se diverso dal valore nullo sia presente nelle righe della tabella esterna tra i valori corrispondenti dell'attributo. Sintassi del comando create table
CREATE TABLE nome_tabella(
CREATE TABLE nome_tabella Alter tableIl comando alter table ha la funzione di modificare la struttura della tabella. Sintassi del comando alter tableOperatore add
ALTER TABLE nome_tabella
ALTER TABLE nome_tabella
ALTER TABLE nome_tabella
ALTER TABLE nome_tabella_figlia Operatore modify
ALTER TABLE nome_tabella
ALTER TABLE nome_tabella Operatore drop
ALTER TABLE nome_tabella
ALTER TABLE nome_tabella_figlia Drop tableIl comando drop table consente di distruggere una tabella, eliminandola fisicamente dal database. Come tutti i comandi DDL è un'operazione irreversibile, e provoca la perdita di tutti i dati contenuti nella tabella. Sintassi del comando alter tableDROP TABLE nome_tabella [CASCADE|RESTRICT] RenameIl comando rename consente di rinominare una tabella. Nello standard SQL non esiste, ma molti Dbms lo implementano. Sintassi del comando renameRENAME nome_tabella TO nuovo_nome_tabella; IndiciCreate IndexÈ una scorciatoia per evitare ALTER TABLE complessi. Aggiunge un indice a una tabella. Sintassi del comando Create IndexCREATE [UNIQUE] INDEX nome_indice ON nome_tabella (nome_colonna [ASC|DESC]) Se si specifica UNIQUE, l'indice è unico, cioè i valori al suo interno non possono essere duplicati. Drop IndexÈ una scorciatoia per evitare ALTER TABLE complessi. Elimina un indice da una tabella. Sintassi del comando DROP IndexDROP INDEX nome_indice ON nome_tabella Strumenti per la gestione
Voci correlate
|
This article is from Wikipedia. All text is available under the terms of the GNU Free Documentation License.
Mercedes Car
This site monitored by SitePinger.net