Le basi di dati

Le basi di dati (o database) sono utilizzate quando il numero e l’importanza delle informazioni sono quelle proprie di organizzazioni di una certa rilevanza. In questo caso gli archivi, di cui un riassunto delle funzionalità principali si trova in questo post, non sono più utili allo scopo di memorizzare i dati e si ricorre a strumenti come i Data Base Management System (DBMS), che permettono di gestire basi di dati complesse.

In sintesi, un database è una raccolta completa di dati archiviati. Un DBMS è invece l’insieme del database, dei programmi e delle procedure che servono per accedere alla collezione di dati.

Caratteristiche dei DBMS

Le principali caratteristiche dei DBMS sono le seguenti:

  • Integrazione. Vi è un unico insieme di dati e tanti programmi che vi possono operare anche simultaneamente. L’integrazione limita la ridondanza e annulla le inconsistenze. Una base di dati è appunto un insieme integrato di dati che vengono memorizzati senza ridondanze e che sono indipendenti dalle applicazioni che le utilizzano.
  • Integrità. Il sistema di gestione della base di dati si preoccupa di verificare che i dati vengono inseriti o modificati rispettando i vincoli sui dati stessi. Nella gestione con archivi invece, ogni applicazione doveva implementare le procedure per verificare che i dati immessi rispettassero i vincoli definiti sui dati stessi.
  • Indipendenza logica. I dati sono definiti indipendentemente dalle procedure che li gestiscono. Questo vuol dire che a seguito di una modifica della base di dati (ad esempio un’estensione della porzione di realtà considerata) spesso non vi è la necessità di modificare le applicazioni.
  • Indipendenza fisica. I dati sono sono strutturati in maniera indipendente rispetto alla loro implementazione fisica, che riguarda soprattutto le modalità di accesso, la maniera in cui i bit sono archiviati nella memoria del calcolatore o la distribuzione dei dati su più nodi di una rete.
  • Sicurezza. Il sistema di gestione della base di dati si preoccupa di verificare che i dati vengano acceduti solo da chi ne ha diritto.

Alla luce di quanto detto, possiamo dunque fornire una definizione più completa. Una base di dati è un insieme strutturato di dati permanenti, raggruppati per tipo e significato in strutture che sono in relazione fra loro, organizzate con ridondanza limitata, usate da applicazioni diverse, in un ambiente controllato e protetto. 

Utenti di un DBMS

Gli utenti che utilizzano un DBMS possono essere sia utenti professionali sia utenti finali. Essi possono essere identificati come segue:

  • utenti finali: sono gli utenti che interagiscono con la base di dati mediante i programmi applicativi progettati a tale scopo;
  • utenti avanzati: sono gli utenti che possono operare sulla base di dati attraverso linguaggi nativi, dunque anche senza utilizzare i programmi applicativi previsti
  • utenti amministratori: sono gli utenti professionali a cui viene affidato il compito di amministrare la base di dati, creando gli utenti che possono accedere alla base di dati , gestendo i diritti di accesso ai dati per ogni singolo utente e modificando se necessario la base di dati
  • programmatori, sono gli utenti che sviluppano applicazioni software che si interfacciano con la base di dati.

Linguaggi di un DBMS

L’utente interagisce con il sistema di gestione della base di dati tramite specifici linguaggi:

  • Data Definition Language (DDL), è il linguaggio per definire la struttura dei dati e le relazione fra i dati stessi;
  • Data Manipulation Language (DML), è il linguaggio manipolare la base di dati inserendo eliminando o modificando i vari record;
  • Query Language (QL) è il linguaggio che permette di interrogare la base di dati allo scopo di estrarne informazioni.