Limbajul de definire a datelor - Data definition language
În contextul SQL , definirea datelor sau limbajul de descriere a datelor ( DDL ) este o sintaxă pentru crearea și modificarea obiectelor bazei de date, cum ar fi tabele, indici și utilizatori. Instrucțiunile DDL sunt similare cu un limbaj de programare pentru computer pentru definirea structurilor de date , în special a schemelor de baze de date . Exemple obișnuite de DDL includ CREATE
, ALTER
și DROP
.
Istorie
Conceptul limbajului de definire a datelor și numele său au fost introduse pentru prima dată în raport cu modelul bazei de date Codasyl , unde schema bazei de date a fost scrisă într-o sintaxă lingvistică care descrie înregistrările , câmpurile și seturile modelului de date ale utilizatorului . Ulterior a fost folosit pentru a se referi la un subset de Structured Query Language (SQL) pentru declararea tabelelor , coloanelor, tipurilor de date și constrângerilor . SQL-92 a introdus un limbaj de manipulare a schemelor și tabele de informații despre schemă pentru a interoga schemele. Aceste tabele de informații au fost specificate ca SQL / Schemata în SQL: 2003 . Termenul DDL este, de asemenea, utilizat într-un sens generic pentru a se referi la orice limbaj formal pentru descrierea datelor sau structurilor informaționale.
Limbaj de interogare structurat (SQL)
Multe limbi de descriere a datelor folosesc o sintaxă declarativă pentru a defini coloane și tipuri de date. Cu toate acestea, Structured Query Language (SQL) folosește o colecție de verbe imperative al căror efect este de a modifica schema bazei de date prin adăugarea, modificarea sau ștergerea definițiilor tabelelor sau a altor elemente. Aceste instrucțiuni pot fi amestecate în mod liber cu alte instrucțiuni SQL, făcând ca DDL să nu fie un limbaj separat.
Declarație CREATE
Comanda create este utilizată pentru a stabili o nouă bază de date, tabel, index sau procedură stocată .
Instrucțiunea CREATE din SQL creează o componentă într-un sistem de gestionare a bazelor de date relaționale (RDBMS). În specificația SQL 1992, tipurile de componente care pot fi create sunt scheme, tabele , vizualizări , domenii, seturi de caractere , colațiuni , traduceri și afirmații. Multe implementări extind sintaxa pentru a permite crearea de elemente suplimentare, cum ar fi indexuri și profiluri de utilizator. Unele sisteme, cum ar fi PostgreSQL și SQL Server , permit CREATE și alte comenzi DDL, în interiorul unei tranzacții de bază de date și astfel pot fi reduse .
Instrucțiunea CREATE TABLE
O comandă CREATE frecvent utilizată este comanda CREATE TABLE . Utilizarea tipică este:
CREATE TABLE [table name] ( [column definitions] ) [table parameters]
Definițiile coloanei sunt:
- O listă separată prin virgulă constând din oricare dintre următoarele
- Definiția coloanei: [numele coloanei] [tipul de date] {NULL | NOT NULL} {opțiuni coloană}
- Definiția cheii primare : CHEIA PRIMARĂ ( [listă de coloane separate prin virgulă] )
- Constrângeri: {CONSTRAINT} [definirea constrângerii]
- Funcționalitate specifică RDBMS
Un exemplu de declarație pentru a crea un tabel numit angajați cu câteva coloane este:
CREATE TABLE employees (
id INTEGER PRIMARY KEY,
first_name VARCHAR(50) not null,
last_name VARCHAR(75) not null,
mid_name VARCHAR(50) not null,
dateofbirth DATE not null
);
Unele forme de CREATE TABLE DDL pot încorpora construcții DML ( limbaj de manipulare a datelor ), cum ar fi sintaxa CREATE TABLE AS SELECT (CTaS) a SQL.
Declarație DROP
Instrucțiunea DROP distruge o bază de date, un tabel, un index sau o vizualizare existente.
O instrucțiune DROP în SQL elimină o componentă dintr-un sistem de gestionare a bazelor de date relaționale (RDBMS). Tipurile de obiecte care pot fi abandonate depind de ce RDBMS este utilizat, dar majoritatea acceptă abandonarea tabelelor , a utilizatorilor și a bazelor de date . Unele sisteme (cum ar fi PostgreSQL ) permit DROP și alte comenzi DDL să apară în interiorul unei tranzacții și, astfel, să fie reduse . Utilizarea tipică este pur și simplu:
DROP objecttype objectname.
De exemplu, comanda pentru a renunța la un tabel numit angajați este:
DROP TABLE employees;
Instrucțiunea DROP este distinctă de instrucțiunile DELETE și TRUNCATE , deoarece DELETE și TRUNCATE nu elimină tabelul în sine. De exemplu, o instrucțiune DELETE poate șterge unele (sau toate) datele dintr-un tabel, lăsând însăși tabela în baza de date, în timp ce o instrucțiune DROP elimină întregul tabel din baza de date.
Declarație ALTER
Instrucțiunea ALTER modifică un obiect de bază de date existent.
O instrucțiune ALTER din SQL modifică proprietățile unui obiect din interiorul unui sistem de gestionare a bazelor de date relaționale (RDBMS). Tipurile de obiecte care pot fi modificate depind de ce RDBMS este utilizat. Utilizarea tipică este:
ALTER objecttype objectname parameters.
De exemplu, comanda pentru a adăuga (apoi a elimina) o coloană numită bule pentru un tabel existent numit chiuvetă este:
ALTER TABLE sink ADD bubbles INTEGER;
ALTER TABLE sink DROP COLUMN bubbles;
Instrucțiunea TRUNCATE
Instrucțiunea TRUNCATE este utilizată pentru a șterge toate datele dintr-un tabel. Este mult mai rapid decât ȘTERGERE .
TRUNCATE TABLE table_name;
Declarații de integritate referențială
Un alt tip de propoziție DDL în SQL este utilizat pentru a defini relațiile de integritate referențială , implementate de obicei ca cheie primară și etichete de cheie străină în unele coloane ale tabelelor. Aceste două afirmații pot fi incluse într-o propoziție CREATE TABLE sau ALTER TABLE ;
Alte limbi
- Schema XML este un exemplu de DDL pentru XML .
- Schema JSON este un exemplu de DDL pentru JSON .
- Schema DFDL este un exemplu de DDL care poate descrie multe formate de text și binare.
Vezi si
- Limbajul de control al datelor
- Limbaj de manipulare a datelor
- Limbajul interogării datelor
- Selectați (SQL)
- Insert (SQL)
- Actualizare (SQL)
- Șterge (SQL)
- Trunchie (SQL)