MySQL è un RDBMS (Relational Database Management System) di proprietà di Oracle Corporation ed ereditato dallo standard SQL. Consente l'accesso e la manipolazione dei database. Chi conosce la parola "Database" deve conoscere le chiavi primarie ed esterne. Non esiste un concetto di database relazionale senza l'esistenza e l'idea dei concetti di chiavi primarie e chiavi esterne. Quindi, in questo articolo, impareremo l'importanza e l'uso corretto delle chiavi primarie ed esterne in MySQL.
Il chiave primaria può essere qualsiasi campo o colonna di una tabella, che dovrebbe essere un valore univoco e non nullo per ogni record o riga.
Il Chiave esterna è un campo che contiene la chiave primaria di qualche altra tabella per stabilire una connessione tra di loro.
Diamo un'occhiata alla sintassi e ai diversi esempi per creare chiavi primarie ed esterne in MySQL.
Chiavi primarie
Possiamo creare una chiave primaria su un segmento della tabella utilizzando ALTER TABLE.
Chiave primaria durante la creazione di una tabella
Supponiamo di voler creare una tabella di libri in MySQL che contenga l'ID, il nome e la categoria di un libro, in cui la colonna ID sarà la chiave primaria.
La query per creare una tabella di questo tipo e creare la colonna ID di una colonna chiave primaria sarà simile a questa:
CREA TABELLA libri (book_id INT NOT NULL,
nome_libro VARCHAR(255) NOT NULL,
book_category VARCHAR(255),
CHIAVE PRIMARIA (book_id)
);
In questa sintassi, possiamo definire dei vincoli alla fine della query.
Se descriviamo la tabella,
libri DESC;Possiamo vedere nella colonna della chiave che book_id è impostato come chiave primaria della tabella.
Rilascia una chiave primaria
Invece di aggiungere, se vogliamo eliminare o rilasciare una chiave primaria, viene utilizzato il comando ALTER.
ALTER TABLE libriRILASCIO CHIAVE PRIMARIA;
Quindi, questo è tutto su come possiamo creare ed eliminare una chiave primaria in una tabella.
Creazione della chiave primaria tramite ALTER TABLE
Per definire una chiave primaria, possiamo utilizzare ALTER TABLE.
ALTER TABLE libriAGGIUNGI CHIAVE PRIMARIA (libro_id);
La chiave primaria è stata aggiunta con successo. Ora, impariamo bene le chiavi esterne.
Chiavi Esterne
Proprio come le chiavi primarie, le chiavi esterne possono essere definite durante la definizione della tabella utilizzando il comando ALTER TABLE.
Chiave esterna durante la creazione di una tabella
Nella sezione della chiave primaria, abbiamo creato una tabella per i libri. Ora, supponiamo di avere un'altra tabella di autori nel nostro database che include l'ID dell'autore come chiave primaria, il nome e il cognome dell'autore,
autori DESC;E vogliamo creare una chiave esterna per l'ID dell'autore nella tabella dei libri. Quindi, per creare una chiave esterna su author_id durante la creazione della tabella libri, eseguiamo questa query:
CREA TABELLA libri (book_id INT NOT NULL,
nome_libro VARCHAR(255) NOT NULL,
book_category VARCHAR(255),
autore_id INT,
CHIAVE PRIMARIA (book_id),
CHIAVE ESTERA (author_id) RIFERIMENTI autori(author_id)
);
Rilascia una chiave esterna
Eliminare un estraneo non è lo stesso che rilasciare una chiave primaria. Per prima cosa dobbiamo ottenere il nome dei vincoli eseguendo il comando "SHOW CREATE TABLE books".
MOSTRA CREARE TABELLA libri;Quindi fornire il nome del vincolo al comando ALTER TABLE in questo modo:
ALTER TABLE libriRILASCIA CHIAVE ESTERA books_ibfk_1;
Ecco come possiamo creare ed eliminare una chiave esterna in una tabella.
Chiave primaria utilizzando il comando ALTER TABLE
Per creare una chiave esterna su una tabella esistente utilizzando il comando ALTER TABLE,
ALTER TABLE libriAGGIUNGI RIFERIMENTI CHIAVE ESTERA (author_id) autori(author_id);
Descriviamo la tabella libri:
libri DESC;Possiamo vedere che l'author_id è impostato come chiave esterna con successo.
Sommario
Abbiamo appreso la profondità e i concetti di chiavi primarie e chiavi esterne. Oltre alla creazione, aggiunta e cancellazione di una chiave primaria o esterna in una tabella.