Informatec Digital » Database » Creazione di tabelle in MySQL: esempi e spiegazioni
- MySQL è un diffuso sistema di gestione di database relazionali per lo sviluppo di applicazioni web.
- Le tabelle in MySQL sono organizzate in colonne e righe, ciascuna delle quali ha un tipo di dati.
- Vincoli quali chiavi primarie ed esterne sono essenziali per l'integrità dei dati.
- L'ottimizzazione delle prestazioni delle tabelle è fondamentale per garantire una risposta rapida alle query.
Guida completa alla creazione di tabelle in MySQL: concetti, esempi e best practice
Cos'è MySQL e perché è importante?
Creazione di tabelle in MySQL: concetti di base
Creare un database in MySQL
CREATE DATABASE nombre_base_de_datos;
Creare una tabella in MySQL
CREATE TABLE nombre_tabla (
columna1 tipo_dato,
columna2 tipo_dato,
columna3 tipo_dato,
...
);
Tipi di dati in MySQL
INT o INTEGER: per memorizzare numeri interi.
VARCHAR: per memorizzare stringhe di testo di lunghezza variabile.
CHAR: per memorizzare stringhe di testo di lunghezza fissa.
DECIMAL: per memorizzare numeri decimali.
DATE: per memorizzare le date.
TIME: per memorizzare le ore.
DATETIME: per memorizzare date e orari combinati.
Creazione di tabelle in MySQL: esempi e spiegazioni
Esempio 1: creare una tabella utenti
CREATE TABLE usuarios (
id INT PRIMARY KEY,
nombre VARCHAR(50),
email VARCHAR(100),
fecha_registro DATE
);
Esempio 2: creare una tabella dei prodotti
CREATE TABLE productos (
id INT PRIMARY KEY,
nombre VARCHAR(100),
precio DECIMAL(10, 2),
fecha_creacion TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
Come creare una tabella in MySQL con vincoli?
- chiave primariaUna chiave primaria è una colonna (o un insieme di colonne) che identifica in modo univoco ogni record in una tabella. Per creare una chiave primaria in MySQL, puoi utilizzare la seguente sintassi:
CREATE TABLE nombre_tabla (
columna1 tipo_dato,
columna2 tipo_dato,
...,
PRIMARY KEY (columna1)
);
- In questo esempio, la colonna “column1” è stata definita come chiave primaria.
- Chiave esterna: Una chiave esterna stabilisce una relazione tra due tabelle sulla base di una colonna comune. Per creare una chiave esterna in MySQL, è necessario seguire questi passaggi:
- Per prima cosa, crea la tabella principale che conterrà la chiave primaria:
CREATE TABLE tabla_principal (
id INT PRIMARY KEY,
...
);
CREATE TABLE tabla_secundaria (
id INT,
...
FOREIGN KEY (id) REFERENCES tabla_principal(id)
);
-
- In questo esempio, la colonna “id” nella tabella “child_table” è stata definita come chiave esterna e fa riferimento alla colonna “id” nella tabella “parent_table”.
- Vincoli di integritàI vincoli di integrità garantiscono che i dati memorizzati in una tabella seguano determinate regole. Ad esempio, è possibile impostare un vincolo di integrità per garantire che un valore non sia nullo o sia conforme a un formato specifico. Di seguito è riportato un esempio di come creare un vincolo di integrità:
CREATE TABLE nombre_tabla (
columna1 tipo_dato CONSTRAINT nombre_restriccion NOT NULL,
...
);
- In questo esempio, il vincolo “constraint_name” garantisce che la colonna “column1” non possa contenere valori nulli.
Creazione di tabelle in MySQL: considerazioni avanzate
Come creare una tabella in MySQL con chiavi primarie ed esterne?
CREATE TABLE tabla_principal (
id INT PRIMARY KEY,
...
);
CREATE TABLE tabla_secundaria (
id INT,
...
FOREIGN KEY (id) REFERENCES tabla_principal(id)
);
Come creare una tabella in MySQL con indici?
CREATE TABLE nombre_tabla (
columna1 tipo_dato,
columna2 tipo_dato,
...
INDEX nombre_indice (columna1, columna2)
);
Come modificare una tabella in MySQL?
ALTER TABLE nombre_tabla ADD columna tipo_dato;
ALTER TABLE nombre_tabla DROP COLUMN columna;
ALTER TABLE nombre_tabla MODIFY columna nuevo_tipo_dato;
Come eliminare una tabella in MySQL?
DROP TABLE nombre_tabla;
Come interrogare una tabella in MySQL?
SELECT * FROM nombre_tabla;
Come importare ed esportare dati in MySQL?
Come eseguire il backup e il ripristino di una tabella in MySQL?
Come ottimizzare le prestazioni delle tabelle in MySQL?
Come risolvere i problemi più comuni durante la creazione di tabelle in MySQL?
Conclusioni