Il linguaggio di controllo dei dati è un sottoinsieme dello Structured Query Language (SQL), che viene generalmente utilizzato per estrarre e controllare le informazioni archiviate in un database. Mentre il linguaggio SQL di base si occupa della manipolazione dei dati all’interno del database, il linguaggio di controllo dei dati si occupa della concessione di autorizzazioni specifiche agli utenti finali per eseguire determinati tipi di comandi all’interno del database. Il linguaggio di controllo dei dati offre a un amministratore di database la capacità di manipolare e personalizzare i privilegi di un utente finale per rafforzare la sicurezza e mantenere una gerarchia di controllo sulle informazioni nel database.
Come SQL, il linguaggio di controllo dei dati è un linguaggio naturale. Ciò significa che i comandi utilizzati all’interno della lingua cercano di essere il più possibile privi di gergo e ambiguità, fornendo un ambiente più amichevole per consentire alle persone che non sono molto esperte di tecnologia di utilizzare le funzionalità del database. A differenza di altri linguaggi come C++, Java e Visual Basic, che utilizzano comandi non comprensibili intuitivamente ai non addetti ai lavori, SQL e il linguaggio di controllo dei dati sono formulati per rendere le loro stringhe di comando abbastanza elementari. Ad esempio, in SQL, il comando “SELECT All FROM Employees WHERE Salary>=50,000” restituirà un elenco di tutte le persone in un database “Employees” il cui stipendio è uguale o superiore a $ 50,000 dollari USA (USD).
Il linguaggio di controllo dei dati è leggermente diverso, poiché il suo obiettivo è manipolare i privilegi piuttosto che le informazioni nel database. I due comandi più importanti nel linguaggio di controllo dei dati sono gli elementi GRANT e REVOKE. Attraverso questi, come suggeriscono i loro nomi, l’amministratore del database può fornire o negare un privilegio specifico a un utente finale del database. I privilegi comuni includono la possibilità di connettersi al database tramite il comando CONNECT; selezionare righe e colonne dal database tramite il comando SELECT; inserire nuove informazioni nel database tramite il comando INSERT; aggiornare le informazioni esistenti all’interno del database tramite il comando UPDATE; eliminare le informazioni esistenti dal database tramite il comando DELETE; oppure eseguire comandi o codici specifici all’interno del database tramite il comando EXECUTE.