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

Vezi si

Referințe

linkuri externe