Limbajul de manipulare a datelor

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

În informatică Limbajul de manipulare a datelor ( DML ) este o familie de limbi care vă permite să citiți, să inserați, să modificați sau să ștergeți datele dintr-o bază de date . În prezent, cel mai utilizat limbaj de manipulare a datelor este SQL ( Structured Query Language ), care își găsește cel mai mare domeniu de aplicare în tratarea bazelor de date relaționale . Alte limbaje asemănătoare DML sunt utilizate de SGBD non-relaționale, cum ar fi IMS / DL1 și IDMS .

Comenzile DML au fost utilizate inițial numai în cadrul programelor scrise în alte limbaje de programare , dar după apariția SQL, acestea sunt acum utilizate și de utilizatorii finali. Ele exprimă acțiuni care trebuie efectuate pe datele identificate de cuvântul inițial al instrucțiunii, care este aproape întotdeauna un verb . În cazul SQL , verbele utilizate sunt SELECT pentru căutare, INSERT pentru inserare, UPDATE pentru actualizare și DELETE pentru ștergere.

Instrucțiunile SQL DML au fost standardizate de ANSI , dar mulți furnizori de SGBD oferă extensii proprietare care oferă funcționalități suplimentare.

SQL DML standard

Introduce

Comanda are funcția de a insera date în tabele .

Coloanele (sau câmpurile) țintă ale valorilor pot fi sau nu declarate în comandă. Dacă nu sunt declarate, trebuie transmisă o valoare comenzii pentru fiecare coloană a tabelului, respectând cu strictețe ordinea coloanelor. În cazul în care , pe de altă parte, sunt declarate coloanele țintă, este posibil să se indice numai coloanele pentru care sunt transmise valori, cu condiția ca valorile pentru toate coloanele nu nule (care nu poate fi nul) din tabel sunt introduse oricum.

De la sine, comanda insert funcționează prin inserarea unui singur rând în tabel la un moment dat. Cu toate acestea, este posibil să inserați mai mult de un rând „automat” trecând către inserție o serie de rânduri (sau tupluri) rezultate dintr-o comandă selectată, atâta timp cât aceste rânduri sunt compatibile cu coloanele tabelului pe care datele este inserat.

Introduceți sintaxa comenzii

  • Insert simplu:
 INSERT INTO table_name
VALORI (lista valori, toate, „respectând câmpurile de masă de comandă);

sau

 INSERT INTO nume_tabelă (lista de domenii vizate de „includere)
VALORI (lista de valori, toate, respectând ordinea câmpurilor declarate mai sus);
  • Inserați folosind selectați:
 INSERT INTO nume_tabelă (lista de domenii vizate de „includere) AS
SELECTA ...;

Actualizați

Comanda de actualizare are funcția triplă de a modifica datele tabelelor.

Numele fiecărui câmp care trebuie modificat trebuie declarat după cuvântul cheie SET și trebuie să fie urmat de simbolul "=" (egal) și de noua valoare pe care trebuie să o asume.

Puteți schimba mai multe câmpuri pe aceeași linie într-o singură comandă de actualizare, separându-le una de cealaltă cu simbolul „,” (virgulă).

Comanda generică actualizează toate rândurile tabelului. Puteți restricționa numărul aplicând cuvântul cheie suplimentar WHERE , care vă permite să faceți o selecție calitativă a rândurilor impunând condiții asupra datelor din rânduri înainte de actualizare.

Sintaxa comenzii de actualizare

  • Actualizare generică:
 ACTUALIZARE nume_tabel
SET field_name1 = 'value1_new',
    field_name2 = 'new_value2' ,
     ...
;
  • Actualizați cu condiția:
 ACTUALIZARE nume_tabel
SET field_name1 = 'value1_new',
    field_name2 = 'new_value2'
WHERE field_name3 = 'valoare' ;

Șterge

Comanda de ștergere are funcția de a șterge date din tabele.

La fel ca comanda de actualizare, și ștergerea poate funcționa într-un mod generic ștergând toate rândurile din tabel sau poate identifica rândurile care trebuie șterse utilizând cuvântul cheie suplimentar WHERE și condiția (sau condițiile) asociate acestuia.

Sintaxa comenzii de ștergere

  • Ștergere generică:
 ȘTERGEȚI DIN table_name ;
  • Ștergeți cu condiția:
 ȘTERGEȚI DIN table_name
UNDE field_name = 'valoare' ;

Tăiați tabelul

După cum s-a menționat deja, o clauză Ștergere fără O unde șterge toate rândurile din tabelul specificat. Cu toate acestea, există un alt mod de a goli complet un tabel: comanda Trunchie tabel . Unele SGBD implementează această comandă (care nu este prezentă în standardul SQL) într-un mod mai rapid decât o Ștergere, de exemplu, ștergând fișierul de date fără a-l citi și recrea-l gol. Cu toate acestea, acest lucru împiedică în general returnarea unor informații accesorii, cum ar fi numărul de rânduri șterse.

Trunchierea sintaxei comenzii tabelului

 TRUNCATE [ TABLE ] nume_tabel

Tranzactia

Instrucțiunile DML Inserare , actualizare , înlocuire și ștergere , dacă sunt plasate în cadrul unei tranzacții , nu sunt ireversibile și pot fi anulate dacă vă dați seama că nu au fost aplicate corect.

O tranzacție este un bloc de instrucțiuni care sunt strâns legate între ele. Dacă apare o eroare (fie că este în program sau din cauza unei probleme externe, de exemplu, dacă sistemul se blochează) nu numai ultima instrucțiune va fi anulată, ci întreaga tranzacție. Acest lucru asigură că integritatea datelor va fi garantată.

Începeți tranzacția

Pentru a iniția în mod explicit o tranzacție, utilizați comanda BEGIN TRANSACTION . Lipsa acestei comenzi în diversele SGBD face ca fiecare instrucțiune să acționeze ca o tranzacție separată.

Începeți sintaxa comenzii tranzacției
 BEGIN TRANSACTION [ transaction_name ];

Angajează-te

Comanda COMMIT este utilizată pentru a confirma tranzacția. Odată cu acesta sunt stocate toate modificările aduse datelor anterior.

Sintaxa comenzii Commit
 COMMIT [ TRANSACTION ] [ transaction_name ];

Revenire

Comanda ROLLBACK este utilizată pentru a anula tranzacția. Odată cu acesta, toate modificările aduse datelor anterior (începând de la începutul tranzacției) sunt anulate.

Sintaxa comenzii de revenire
 ROLLBACK [ TRANSACTION ] [ transaction_name ];

Elemente conexe

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