Limbajul de definire a datelor

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

În informatică, Limbajul de definire a datelor ( DDL ) este un limbaj , parte a limbajului SQL , care vă permite să creați, să modificați sau să ștergeți obiecte dintr-o bază de date sau să acționați în schema bazei de date . Comenzile DDL definesc structura bazei de date și, prin urmare, organizarea logică a datelor conținute în aceasta, dar nu oferă instrumente pentru a modifica valorile asumate de date sau pentru a interoga datele în sine pentru care Limbajul de manipulare a datelor este respectiv utilizat și Limbajul interogării datelor . Este utilizat atât în ​​faza de proiectare , cât și în faza de restructurare a bazei de date. Pentru a acționa asupra structurii bazei de date, utilizatorul trebuie să aibă permisiunile necesare, atribuite prin Limbajul de control al datelor (DCL).

Domenii

Creați un domeniu

În plus față de tipuri precum întreg, char, float, ... putem crea altele: creația este similară cu o redenumire a unui tip fundamental văzut printre cele de mai sus sau a unui tip creat de la zero, moștenind toate caracteristicile sale.

Creați sintaxa comenzii de domeniu

 CREAȚI DOMENIU nume_domeniu tip AS [ SetValue ] [ Constraint ] { DefSchema }

Creați un tip de nume nume_domeniu pornind de la un tip anterior, setând o valoare implicită opțională și un set de constrângeri. Această operație vă permite să definiți o singură dată toate caracteristicile (constrângerile) care pot fi asociate cu un atribut, atunci când acesta este utilizat în mai multe tabele, evitând astfel redundanțele.

Drop Domain

Ștergeți un domeniu definit de utilizator.

Sintaxa comenzii Drop Domain

 DROP DOMAIN domeniu_nume [ CASCADE | RESTRICȚIE ]

Dacă este specificat CASCADE , toate coloanele tabelelor aparținând domeniului respectiv vor fi șterse odată cu acesta. Dacă specificați RESTRICT , care este implicit, acest lucru nu se va face.

Scheme

Creați schemă

Schema este o colecție a tuturor obiectelor care vor face parte din baza de date, adică domenii, tabele, vizualizări, privilegii, afirmații. Este un pic ca partea declarativă a unui program scris într-un limbaj imperativ: mai întâi creăm tipurile, funcțiile și procedurile, apoi le folosim în corp.

Creați sintaxa comenzii schemei

 CREATE SCHEMA [NomeSchema] [[autorization] Autorizație] {DefElementoSchema}

Autorizarea este numele utilizatorului care deține schema; dacă lipsește, se presupune că utilizatorul a emis comanda. SchemaName poate fi omis: în acest caz, numele va fi cel al utilizatorului proprietar. Pentru fiecare utilizator există autorizații, adică putem impune anumite limite celor care interogă baza noastră de date .

Schema de renunțare

Ștergeți o schemă deja definită.

Sintaxa comenzii Drop Schema

 DROP SCHEMA nume_schemă [ CASCADE | RESTRICȚIE ]

Dacă este specificat CASCADE , toate obiectele care fac parte din schemă vor fi șterse. Dacă specificați RESTRICT , care este valoarea implicită, obiectele care fac parte din schemă vor fi păstrate.

Bază de date

Creați o bază de date

Comanda CREATE DATABASE este utilizată pentru a crea o nouă bază de date, care poate conține tabele, vizualizări, proceduri stocate, declanșatoare sau alte tipuri de obiecte.

Creați sintaxa comenzii bazei de date

Sintaxa este următoarea:

 CREAȚI { BAZA DE DATE | SCHEMA } nume_bază de date
[ create_specification [, create_specification ] ...]
   
create_specification :
[ DEFAULT ] CHARACTER SET charset_name
| [ DEFAULT ] COLLATE colation_name

Dacă [IF NOT EXISTS] este specificat la executarea comenzii, baza de date este creată numai dacă nu există, altfel nu va fi returnată nicio eroare. Șirul create_specification vă permite să inserați opțiuni atunci când creați baza de date. CHARACTER SET inserează setul de caractere acceptat în baza de date. Prin COLLATE puteți defini datele implicite ale bazei de date.

Modificați baza de date

Comanda ALTER DATABASE este utilizată pentru a modifica o bază de date existentă. Nu există în standardul SQL, dar majoritatea SGBD îl implementează.

Modificați sintaxa comenzii bazei de date

Sintaxa este următoarea:

 ALTER { BAZA DE DATE | } SCHEMA [nume_bazădedate]   
[ DEFAULT ] CHARACTER SET charset_name
| [ DEFAULT ] COLLATE colation_name

Eliminați baza de date

Comanda DROP DATABASE este utilizată pentru a renunța la o bază de date. Această comandă nu există în standardul SQL, dar toate SGBD-urile o implementează.

Eliminați sintaxa comenzii bazei de date

Sintaxa este următoarea:

 DROP DATABASE database_name

Mese

Creați o masă

Comanda CREATE TABLE are funcția de a crea un nou tabel (sau tabel).
Numele tabelului poate fi scris fie cu litere mari, fie cu litere mici, în orice caz, cu toate acestea, trebuie să respecte următoarele reguli:

  • Poate consta din litere și cifre, dar primul caracter trebuie să fie întotdeauna o literă;
  • Nu poate depăși 30 de caractere în lungime;
  • Nu poate avea același nume ca un tabel sau o vizualizare care există deja pe același utilizator de bază de date.

Pe lângă definirea atributelor unui tabel, este posibil să se definească constrângeri.
Tabelul poate fi creat gol (vezi tabelul de creare simplă) sau poate fi creat și completat cu date (vezi tabelul de creare folosind select ): în al doilea caz structura tabelului este definită implicit de numărul de coloane (sau câmpuri) extrase din select, din tipul de date al fiecărei coloane și din numele coloanelor respective extrase din select (sau din aliasurile aplicate acestora). Dacă tabelul este completat în timpul creării, tranzacția este terminată automat printr-o comandă commit .

Constrângeri de integritate

Există cuvinte rezervate pentru a implementa constrângerile de integritate cu SQL .

Constrângeri intrarelaționale
  • NOT NULL : Constrângerea not null indică faptul că valoarea nulă nu este permisă ca valoare de atribut; în acest caz, atributul trebuie să fie întotdeauna specificat de obicei în timpul fazei de inserție. Cu toate acestea, dacă atributul este asociat cu o valoare implicită, alta decât nulă, devine posibilă inserarea acestuia chiar și fără a furniza o valoare a atributului, deoarece valoarea implicită este atribuită automat atributului.
  • UNIQUE : O constrângere unică se aplică unui atribut sau unui set de atribute ale unui tabel și forțează valorile atributelor (sau tuplurile de valori din setul de atribute) să fie o (super) cheie, adică rânduri diferite de tabelul nu pot apărea pe linii diferite fără a încălca constrângerea, deoarece se presupune că valorile nule sunt toate diferite una de cealaltă.
  • PRIMARY KEY : La definirea unui tabel este necesar să se specifice cheia primară pentru fiecare relație, cel mai important dintre identificatorii relației. SQL vă permite astfel să specificați constrângerea cheii primare o singură dată pentru fiecare tabel. Constrângerea cheii primare poate fi definită direct pe un singur atribut sau poate fi definită prin listarea mai multor atribute care alcătuiesc identificatorul.
Constrângeri interrelaționale

Pentru gestionarea acestui tip de constrângeri FOREIGN KEY este utilizat ( de exemplu , cheie externă). Această constrângere creează o legătură între valorile unui atribut al tabelului curent și valorile unui atribut al unui alt tabel, care este relativ la tabelul curent în sine. Constrângerea necesită ca pentru fiecare rând al tabelului valoarea atributului specificat dacă este diferită de valoarea nulă este prezentă în rândurile tabelului extern între valorile corespunzătoare ale atributului.

Creați sintaxa comenzii tabelului

  • Creație simplă (adăugarea unui CONSTRAINT este opțional):
 CREATE TABLE table_name (
 column_name1 tip de date CONSTRAINT,
 column_name2 tip de date CONSTRAINT,
 nome_colonna3 tip de date CONSTRAINT,
 ...
 nome_colonnaN tip de date CONSTRAINT);
  • Crearea folosind selectați:
 CREATE TABLE nume_tabel
LA FEL DE
SELECTA ...;

Modificați masa

  • Comanda ALTER TABLE are funcția de a modifica structura tabelului.
  • Operatorul ADD vă permite să inserați o nouă coloană pe un tabel existent sau să adăugați constrângeri coloanelor tabelului.
  • Operatorul MODIFY vă permite să modificați tipul de date și / sau constrângerea fiecărei coloane a unui tabel.
  • Operatorul DROP vă permite să renunțați la constrângere din coloană.

Modificați sintaxa comenzii tabelului

Adăugați operator
  • Se introduce o nouă coloană:
 ALTER TABLE nume_tabel
ADD CONSTRAINT data_type column_name_new;
  • Adăugarea unei chei principale:
 ALTER TABLE nume_tabel
 ADĂUGAȚI CONSTRAINT table_name_pk
 CHEIE PRIMARĂ ( nume_coloană )); / * acționând ca cheie primară * /
  • Adăugarea unui index:
 ALTER TABLE nume_tabel
 ADĂUGAȚI CONSTRAINT table_name_pk
 ADĂUGAȚI INDEX index_name ( column_name )
  • Adăugarea unei chei străine moștenite dintr-un alt tabel:
 ALTER TABLE table_name_daughter
 ADĂUGAȚI CONSTRAINT table_name_fk_daughter
 CHEIE STRĂINĂ ( nume_coloană ) / * acționând ca o cheie străină pe masa copilului * /
 REFERINȚE nume_tabel_tată ( nume_coloană )); / * acționând ca cheie principală pe tabela părinte * /
Modificarea operatorului
  • Modificarea tipului de date al unei coloane:
 ALTER TABLE nume_tabel
 MODIFICĂ din nou tipul de date nume_coloană ; / * noul tip de date trebuie să fie compatibil * /
  • Modificarea constrângerii unei coloane:
 ALTER TABLE nume_tabel
 MODIFICĂ nume_coloană CONSTRAINT nou ;
Operator drop
  • Ștergerea cheii principale:
 ALTER TABLE nume_tabel
 DROP CHEIE PRIMARĂ ;
  • Ștergeți cheia străină:
 ALTER TABLE table_name_daughter
 DROP CONSTRAINT table_name_daughter_fk ;

Picătură de masă

Comanda DROP TABLE vă permite să distrugeți un tabel scăpându-l fizic din baza de date. Ca toate comenzile DDL, este o operație ireversibilă și provoacă pierderea tuturor datelor conținute în tabel.

Sintaxa comenzii drop table

 DROP TABLE table_name [ CASCADE | RESTRICȚIE ]

Redenumiți

Comanda RENAME vă permite să redenumiți numele atributelor unui tabel. În standardul SQL nu există, dar mulți Dbms îl implementează, de exemplu, postgres.

Redenumiți sintaxa comenzii

 REDENUMIRE nume_tabelă LA new_table_name;

Indici

Creați index

Aceasta este o comandă rapidă pentru a evita tabelele de modificări complexe. Adaugă un index la un tabel.

Sintaxa comenzii Create Index

 CREARE INDEX [ UNIQUE ] index_name
 ON nume_tabel ( nume_coloană [ ASC | DESC ])

Dacă este specificat UNIQUE , indexul este unic, adică valorile din acesta nu pot fi duplicate.
Dacă specificați ASC valorile din interiorul indexului vor fi în ordine crescătoare, dacă specificați DESC vor fi în ordine descrescătoare; implicit este primul.

Drop Index

Aceasta este o comandă rapidă pentru a evita tabelele de modificări complexe. Ștergeți un index dintr-un tabel.

Aruncați sintaxa comenzii index

 DROP INDEX index_name
  ON nume_tabel

Instrumente de management

  • Programator PL / SQL - Distribuit de AllRoundAutomations
  • SQL Server Management Studio - Distribuit de Microsoft
  • SQL Manager Studio - Distribuit de Stevtech

Elemente conexe

Informatică Portal IT : accesați intrările Wikipedia care se ocupă cu IT