Limbajul de control al datelor este un subset al limbajului de interogare structurat (SQL), care este de obicei folosit pentru a extrage și controla informațiile stocate într-o bază de date. În timp ce limbajul SQL de bază se ocupă de manipularea datelor în baza de date, limbajul de control al datelor se ocupă de acordarea de autoritate utilizatorilor finali specifici pentru a executa anumite tipuri de comenzi în baza de date. Limbajul de control al datelor oferă administratorului bazei de date capacitatea de a manipula și adapta privilegiile unui utilizator final pentru a impune securitatea și a menține o ierarhie de control asupra informațiilor din baza de date.
La fel ca SQL, limbajul de control al datelor este un limbaj natural. Aceasta înseamnă că comenzile folosite în limbaj încearcă să fie cât mai libere de jargon și ambiguitate, oferind un mediu mai prietenos pentru a permite persoanelor care nu sunt foarte pricepuți din punct de vedere tehnologic să utilizeze caracteristicile bazei de date. Spre deosebire de alte limbaje, cum ar fi C++, Java și Visual Basic, care utilizează comenzi care nu sunt ușor de înțeles pentru profani, SQL și limbajul de control al datelor sunt formulate pentru a face șirurile lor de comandă destul de elementare. De exemplu, în SQL, comanda „SELECTARE TOȚI DIN ANgajați WHERE Salary>=50,000” ar returna o listă cu toate persoanele dintr-o bază de date „Angajați” al căror salariu este egal sau depășește 50,000 USD (USD).
Limbajul de control al datelor este puțin diferit, deoarece scopul său este de a manipula privilegii mai degrabă decât informațiile din baza de date. Cele mai importante două comenzi din limbajul de control al datelor sunt elementele GRANT și REVOKE. Prin acestea, după cum sugerează numele lor, administratorul bazei de date poate oferi sau refuza un anumit privilegiu unui utilizator final al bazei de date. Privilegiile comune includ posibilitatea de a se conecta la baza de date prin comanda CONNECT; selectați rânduri și coloane din baza de date prin comanda SELECT; introduceți informații noi în baza de date prin comanda INSERT; actualizați informațiile existente în baza de date prin comanda UPDATE; ștergeți informațiile existente din baza de date prin comanda DELETE; sau executați anumite comenzi sau cod în baza de date prin comanda EXECUTE.