Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Slide DDL Informatica scienze applicate, Slide di Informatica

Presentazione powerpoint su DDL di informatica per liceo delle scienze applicate

Tipologia: Slide

2021/2022

Caricato il 24/10/2023

guacamole-nibba-peepee
guacamole-nibba-peepee 🇮🇹

5 documenti

1 / 4

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Data Definition Language (DDL)
Il DDL comprende una parte standard ma ogni RDBMS ha proprie peculiarità sia legate ai tipi di dati che
implementa in più rispetto allo standard sia rispetto alla sintassi che spesso viene arricchita.
Il DDL in generale non viene utilizzato direttamente in quanto la definizione della struttura dati di un
applicativo viene definita a priori e raramente all’interno di un applicativo si trovano istruzioni DDL (mentre,
negli applicativi senza ORM, si trovano una miriade di istruzioni SQL e DML). Per la stessa definizione a
priori della struttura dei dati spesso si utilizza un manager che offre un’interfaccia utente per la definizione
degli stessi. Per MySQL abbiamo, per esempio, phpMySQLAdmin (un’interfaccia utente scritta in PHP che
richiede un sito web dove effettuare il deploy ma è accessibile da ovunque), MySQL Workbench (il manager
ufficiale MySQL), ecc.
La sintassi proposta di seguito che è utilizzabile all’esame è un estratto della sintassi di MySQL ma che
comunque, con modifiche minime, è applicabile a qualunque RDBMS.
CREATE TABLE
Alcune note:
- quasi tutti i database supportano la dichiarazione di una primary key inserendo la keyword PRIMARY KEY a
fianco del campo. Tale sintassi vale per ogni vincolo (anche i vincoli di univocità – che è possibile, se utile,
andare ad inserire sulle chiavi candidate e per i vincoli di integrità referenziale). Qui è omessa questa
sintassi in quanto meno generica di quella che prevede di inserire i vincoli in fondo al comando di creazione
tabella.
- MySQL supporta la definizione degli indici all’interno dello statement CREATE TABLE. Qui, per motivi di
chiarezza, viene omessa questa possibilità. Per la creazione dell’indice si utilizza una sintassi specifica
supportata da MySQL ed anche dalla maggior parte dei RDBMS
CREATE TABLE tbl_name
(create_definition,...)
create_definition:
col_name column_definition
| CONSTRAINT constraint_name PRIMARY KEY (pk_col_name,...)
| CONSTRAINT constraint_name FOREIGN KEY (fk_col_name,...) reference_definition
column_definition:
data_type [NOT NULL | NULL] [AUTO_INCREMENT]
pf3
pf4

Anteprima parziale del testo

Scarica Slide DDL Informatica scienze applicate e più Slide in PDF di Informatica solo su Docsity!

Data Definition Language (DDL)

Il DDL comprende una parte standard ma ogni RDBMS ha proprie peculiarità sia legate ai tipi di dati che implementa in più rispetto allo standard sia rispetto alla sintassi che spesso viene arricchita. Il DDL in generale non viene utilizzato direttamente in quanto la definizione della struttura dati di un applicativo viene definita a priori e raramente all’interno di un applicativo si trovano istruzioni DDL (mentre, negli applicativi senza ORM, si trovano una miriade di istruzioni SQL e DML). Per la stessa definizione a priori della struttura dei dati spesso si utilizza un manager che offre un’interfaccia utente per la definizione degli stessi. Per MySQL abbiamo, per esempio, phpMySQLAdmin (un’interfaccia utente scritta in PHP che richiede un sito web dove effettuare il deploy ma è accessibile da ovunque), MySQL Workbench (il manager ufficiale MySQL), ecc. La sintassi proposta di seguito che è utilizzabile all’esame è un estratto della sintassi di MySQL ma che comunque, con modifiche minime, è applicabile a qualunque RDBMS.

CREATE TABLE

Alcune note:

  • quasi tutti i database supportano la dichiarazione di una primary key inserendo la keyword PRIMARY KEY a fianco del campo. Tale sintassi vale per ogni vincolo (anche i vincoli di univocità – che è possibile, se utile, andare ad inserire sulle chiavi candidate e per i vincoli di integrità referenziale). Qui è omessa questa sintassi in quanto meno generica di quella che prevede di inserire i vincoli in fondo al comando di creazione tabella.
  • MySQL supporta la definizione degli indici all’interno dello statement CREATE TABLE. Qui, per motivi di chiarezza, viene omessa questa possibilità. Per la creazione dell’indice si utilizza una sintassi specifica supportata da MySQL ed anche dalla maggior parte dei RDBMS CREATE TABLE tbl_name (create_definition,...) create_definition: col_name column_definition | CONSTRAINT constraint_name PRIMARY KEY (pk_col_name,...) | CONSTRAINT constraint_name FOREIGN KEY (fk_col_name,...) reference_definition column_definition: data_type [NOT NULL | NULL] [AUTO_INCREMENT]

data_type: BIT | INT | DOUBLE | NUMERIC[(length[,decimals])] | DATE | TIME | DATETIME | CHAR(length) | VARCHAR(length) | TEXT | BINARY(length) | VARBINARY(length) | IMAGE index_col_name: col_name [ASC | DESC] reference_definition: REFERENCES tbl_name (index_col_name,...) [ON DELETE reference_option] [ON UPDATE reference_option] reference_option: RESTRICT | CASCADE | SET NULL | NO ACTION

Qui si illustra la sintassi per fare una parte delle operazioni possibili. ALTER TABLE tbl_name alter_specification alter_specification: | ADD COLUMN col_name column_definition [FIRST | AFTER col_name ] | ADD COLUMN (col_name column_definition,...) | ADD CONSTRAINT constraint_name PRIMARY KEY (pk_col_name,...) | ADD CONSTRAINT constraint_name FOREIGN KEY (fk_col_name,...) reference_definition | MODIFY COLUMN col_name column_definition [FIRST | AFTER col_name] | DROP COLUMN col_name | DROP PRIMARY KEY | DROP FOREIGN KEY constraint_name | RENAME TO new_tbl_name