logo

Introduzione del DBMS (sistema di gestione del database) – Set 1

Un Database Management System (DBMS) è un sistema software progettato per gestire e organizzare i dati in modo strutturato. Consente agli utenti di creare, modificare ed eseguire query su un database, nonché di gestire la sicurezza e i controlli di accesso per quel database.

DBMS fornisce un ambiente per archiviare e recuperare i dati in modo semplice ed efficiente.

Caratteristiche principali del DBMS



  • Modellazione dei dati: Un DBMS fornisce strumenti per creare e modificare modelli di dati, che definiscono la struttura e le relazioni dei dati in un database.
  • Archiviazione e recupero dei dati: Un DBMS è responsabile della memorizzazione e del recupero dei dati dal database e può fornire vari metodi per la ricerca e l'interrogazione dei dati.
  • Controllo della concorrenza: Un DBMS fornisce meccanismi per controllare l'accesso simultaneo al database, per garantire che più utenti possano accedere ai dati senza entrare in conflitto tra loro.
  • Integrità e sicurezza dei dati: Un DBMS fornisce strumenti per far rispettare l'integrità dei dati e i vincoli di sicurezza, come vincoli sui valori dei dati e controlli di accesso che limitano chi può accedere ai dati.
  • Backup e ripristino: Un DBMS fornisce meccanismi per il backup e il ripristino dei dati in caso di guasto del sistema.
  • I DBMS possono essere classificati in due tipologie: Sistema di gestione di database relazionali (RDBMS) e sistema di gestione di database non relazionali (NoSQL o Non SQL)
  • RDBMS: I dati sono organizzati sotto forma di tabelle e ogni tabella ha una serie di righe e colonne. I dati sono messi in relazione tra loro tramite chiavi primarie ed esterne.
  • NoSQL: I dati sono organizzati sotto forma di coppie chiave-valore, documenti, grafici o basati su colonne. Questi sono progettati per gestire scenari su larga scala e ad alte prestazioni.

Un database è una raccolta di dati correlati che aiuta a recuperare, inserire ed eliminare in modo efficiente i dati dal database e organizza i dati sotto forma di tabelle, viste, schemi, report, ecc. Ad esempio, un database universitario organizza il dati su studenti, docenti, personale amministrativo, ecc. che aiutano a recuperare, inserire ed eliminare in modo efficiente i dati da esso.

Lingue della banca dati

  • Linguaggio di definizione dei dati
  • Linguaggio di manipolazione dei dati
  • Linguaggio di controllo dei dati
  • Linguaggio di controllo transazionale

Linguaggio di definizione dei dati

DDL è il nome abbreviato di Data Definition Language, che si occupa degli schemi e delle descrizioni del database, di come i dati dovrebbero risiedere nel database.

  • CREARE: per creare un database e i suoi oggetti come (tabella, indice, visualizzazioni, procedura di archiviazione, funzione e trigger)
  • ALTERARE: altera la struttura del database esistente
  • GOCCIOLARE: eliminare oggetti dal database
  • TRONCARE: rimuovere tutti i record da una tabella, inclusi tutti gli spazi allocati per i record rimossi
  • COMMENTO: aggiungere commenti al dizionario dati
  • RINOMINARE: rinominare un oggetto

Linguaggio di manipolazione dei dati

DML è il nome abbreviato di Data Manipulation Language che si occupa della manipolazione dei dati e include le istruzioni SQL più comuni come SELECT, INSERT, UPDATE, DELETE, ecc., ed è utilizzato per archiviare, modificare, recuperare, eliminare e aggiornare i dati in un database. Linguaggio di interrogazione dei dati (DQL) è il sottoinsieme del linguaggio di manipolazione dei dati. Il comando più comune di DQL è SELEZIONARE dichiarazione. L'istruzione SELECT aiuta a recuperare i dati dalla tabella senza modificare nulla nella tabella.

  • SELEZIONARE: recuperare dati da un database
  • INSERIRE: inserire i dati in una tabella
  • AGGIORNAMENTO: aggiorna i dati esistenti all'interno di una tabella
  • ELIMINARE: Elimina tutti i record da una tabella del database
  • UNISCI: Operazione UPSERT (inserimento o aggiornamento)
  • CHIAMATA: chiamare un sottoprogramma PL/SQL o Java
  • SPIEGARE IL PIANO: interpretazione del percorso di accesso ai dati
  • TABELLA DI BLOCCO: Controllo della concorrenza

Linguaggio di controllo dei dati

DCL è l'abbreviazione di Data Control Language che funge da specificatore di accesso al database (sostanzialmente per concedere e revocare le autorizzazioni agli utenti nel database

  • CONCESSIONE: concedere le autorizzazioni all'utente per l'esecuzione dei comandi DML(SELECT, INSERT, DELETE,…) sulla tabella
  • REVOCARE: revocare le autorizzazioni all'utente per l'esecuzione del comando DML(SELECT, INSERT, DELETE,…) sulla tabella specificata

Linguaggio di controllo transazionale

TCL è l'abbreviazione di Transactional Control Language che funge da gestore per tutti i tipi di dati transazionali e tutte le transazioni. Alcuni dei comandi di TCL lo sono

  • Riporta indietro: Utilizzato per annullare o annullare le modifiche apportate al database
  • Commettere: Viene utilizzato per applicare o salvare le modifiche nel database
  • Punto di salvataggio: Viene utilizzato per salvare i dati su base temporanea nel database

Linguaggio di interrogazione dei dati (DQL):

Linguaggio di interrogazione dei dati (DQL) è il sottoinsieme di Linguaggio di manipolazione dei dati . Il comando più comune di DQL è 1the Istruzione SELEZIONATA . L'istruzione SELECT ci aiuta a recuperare i dati dalla tabella senza cambiare nulla o modificare la tabella. DQL è molto importante per il recupero di dati essenziali da un database.

Sistema di gestione della banca dati

Il software utilizzato per gestire i database si chiama Database Management System (DBMS). Ad esempio, MySQL, Oracle, ecc. Sono popolari DBMS commerciali utilizzati in diverse applicazioni. DBMS consente agli utenti le seguenti attività:

  • Definizione dei dati: Aiuta nella creazione, modifica e rimozione delle definizioni che definiscono l'organizzazione dei dati nel database.
  • Aggiornamento dati: Aiuta nell'inserimento, nella modifica e nella cancellazione dei dati effettivi nel database.
  • Recupero dei dati: Aiuta nel recupero dei dati dal database che possono essere utilizzati dalle applicazioni per vari scopi.
  • Amministrazione utente: Aiuta a registrare e monitorare gli utenti, a garantire la sicurezza dei dati, a monitorare le prestazioni, a mantenere l'integrità dei dati, a gestire il controllo della concorrenza e a recuperare informazioni danneggiate da errori imprevisti.

Applicazioni del DBMS:

  • Informazioni aziendali: Vendite, contabilità, risorse umane, produzione, rivenditori online.
  • Settore bancario e finanziario: Le banche mantengono i dati del cliente, i conti, i prestiti, le transazioni bancarie, le transazioni con carta di credito. Finanza: memorizzazione delle informazioni su vendite e partecipazioni, acquisto di azioni e obbligazioni finanziarie.
  • Università: Mantenere le informazioni sugli iscritti ai corsi degli studenti, sui voti degli studenti, sui ruoli del personale.
  • Compagnie aeree: Prenotazioni e orari.
  • Telecomunicazioni: Manutenzione fatture prepagate e posticipate.

Cambio di paradigma dal file system al DBMS

File System gestisce i dati utilizzando i file su un disco rigido. Gli utenti possono creare, eliminare e aggiornare i file in base alle loro esigenze. Consideriamo l'esempio del sistema di gestione universitaria basato su file. I dati degli studenti sono disponibili nei rispettivi dipartimenti, sezione accademica, sezione risultati, sezione conti, ufficio ostello, ecc. Alcuni dati sono comuni a tutte le sezioni come numero di matricola, nome, nome del padre, indirizzo e numero di telefono degli studenti, ma alcuni dati sono disponibili solo in una sezione particolare, come il numero di assegnazione dell'ostello, che fa parte dell'ufficio dell'ostello. Parliamo dei problemi con questo sistema:

  • Ridondanza dei dati: Si dice che i dati siano ridondanti se gli stessi dati vengono copiati in molti posti. Se uno studente vuole cambiare il proprio numero di telefono, deve aggiornarlo in varie sezioni. Allo stesso modo, i vecchi record devono essere cancellati da tutte le sezioni che rappresentano quello studente.
  • Incoerenza dei dati: Si dice che i dati siano incoerenti se più copie degli stessi dati non corrispondono tra loro. Se il numero di telefono è diverso nella Sezione Account e nella Sezione Accademici, sarà incoerente. L'incoerenza potrebbe essere dovuta a errori di battitura o al mancato aggiornamento di tutte le copie degli stessi dati.
  • Accesso ai dati difficile: Un utente dovrebbe conoscere la posizione esatta del file per accedere ai dati, quindi il processo è molto complicato e noioso. Se l'utente desidera cercare il numero di assegnazione dell'ostello studentesco di uno studente tra 10.000 record di studenti non ordinati, quanto può essere difficile.
  • Accesso non autorizzato: I file system possono comportare l'accesso non autorizzato ai dati. Se uno studente accede ad un file contenente i suoi voti, può modificarlo in modo non autorizzato.
  • Nessun accesso simultaneo: L'accesso contemporaneo agli stessi dati da parte di più utenti è noto come concorrenza. Il file system non consente la concorrenza poiché ai dati può accedere un solo utente alla volta.
  • Nessun backup e ripristino: Il file system non incorpora alcun backup e ripristino dei dati se un file viene perso o danneggiato.

Vantaggi del DBMS

  • Organizzazione dei dati: Un DBMS consente l'organizzazione e l'archiviazione dei dati in modo strutturato, facilitando il recupero e l'interrogazione dei dati secondo necessità.
  • Integrità dei dati: Un DBMS fornisce meccanismi per imporre vincoli di integrità dei dati, come vincoli sui valori dei dati e controlli di accesso che limitano chi può accedere ai dati.
  • Accesso simultaneo: Un DBMS fornisce meccanismi per controllare l'accesso simultaneo al database, per garantire che più utenti possano accedere ai dati senza entrare in conflitto tra loro.
  • La sicurezza dei dati: Un DBMS fornisce strumenti per la gestione della sicurezza dei dati, come il controllo dell'accesso ai dati e la crittografia dei dati sensibili.
  • Backup e ripristino: Un DBMS fornisce meccanismi per il backup e il ripristino dei dati in caso di guasto del sistema.
  • Condivisione dei dati: Un DBMS consente a più utenti di accedere e condividere gli stessi dati, il che può essere utile in un ambiente di lavoro collaborativo.

Svantaggi del DBMS

  • Complessità: Il DBMS può essere complesso da configurare e mantenere e richiede conoscenze e competenze specializzate.
  • Spese generali delle prestazioni: L'utilizzo di un DBMS può aggiungere un sovraccarico alle prestazioni di un'applicazione, soprattutto nei casi in cui sono richiesti elevati livelli di concorrenza.
  • Scalabilità: L'uso di un DBMS può limitare la scalabilità di un'applicazione, poiché richiede l'uso di meccanismi di blocco e altri meccanismi di sincronizzazione per garantire la coerenza dei dati.
  • Costo: Il costo di acquisto, manutenzione e aggiornamento di un DBMS può essere elevato, soprattutto per sistemi grandi o complessi.
  • Casi d'uso limitati: Non tutti i casi d'uso sono adatti per un DBMS, alcune soluzioni non necessitano di elevata affidabilità, coerenza o sicurezza e potrebbero essere meglio servite da altri tipi di archiviazione dei dati.

Queste sono le ragioni principali che hanno portato al passaggio dal file system al DBMS. Vedi anche

Un Database Management System (DBMS) è un sistema software che consente agli utenti di creare, mantenere e gestire database. È una raccolta di programmi che consente agli utenti di accedere e manipolare i dati in un database. Un DBMS viene utilizzato per archiviare, recuperare e manipolare i dati in modo da garantire sicurezza, privacy e affidabilità.

Diversi tipi di DBMS

  • DBMS relazionali (RDBMS): Un RDBMS memorizza i dati in tabelle con righe e colonne e utilizza SQL (Structured Query Language) per manipolare i dati.
  • DBMS orientato agli oggetti (OODBMS): Un OODBMS memorizza i dati come oggetti, che possono essere manipolati utilizzando linguaggi di programmazione orientati agli oggetti.
  • DBMS NoSQL: Un DBMS NoSQL archivia i dati in strutture dati non relazionali, come coppie chiave-valore, modelli basati su documenti o modelli grafici.

Nel complesso, un DBMS è un potente strumento per la gestione e la manipolazione dei dati e viene utilizzato in molti settori e applicazioni, come la finanza, la sanità, la vendita al dettaglio e altro ancora.

  • Sistema di gestione del database – Introduzione | Insieme 2
  • Tutti gli articoli DBMS
  • Quiz DBMS