Sebbene sia da un bel po’ di tempo che non scrivo nessun appunto tecnico in merito a MySQL, voglio appuntarmi un piccolo comando che ho trovato nell’help e che reputo assai efficace.
Vi sarà infatti senz’altro capitato di aver costruito delle tabelle in MySQL e di avere poi l’esigenza, anche a distanza di tempo, di ottenere il codice SQL delle tabelle che avevate precedentemente costruito.
Il comnado è il seguente:
SHOW CREATE TABLE NomeMiaTabella\G
Tale comando serve infatti a reperire l’istruzione SQL con la quale si è generata la tabella.
Il suo risultato è simile a questo:
SHOW CREATE TABLE prova\G
*************************** 1. row ***************************
Table: prova
Create Table: CREATE TABLE `prova` (
`idprova` int(10) NOT NULL auto_increment,
`nome` varchar(255) NOT NULL,
`cognome` varchar(255) default NULL,
PRIMARY KEY (`idprova`),
UNIQUE KEY `prova` (`cognome`,`nome`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=latin1
Questo chiaramente è molto utile poter vedere ed analizzare la struttura del database sulla quale si sta lavorando, eventualmente adattandola alle proprie esigenze 🙂
Prendo nota anche di un altro comando molto simile ma non uguale, questo infatti non visualizza il codice SQL di creazione ma, solo l’elenco dei campi della tabella con i tipi associati a ciascuno campo. Per esempio:
describe prova; +---------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +---------+--------------+------+-----+---------+----------------+ | idprova | int(10) | NO | PRI | NULL | auto_increment | | nome | varchar(255) | NO | | NULL | | | cognome | varchar(255) | YES | MUL | NULL | | +---------+--------------+------+-----+---------+----------------+
Chiaramente il primo suggerimento potrebbe essere utilizzato per comprendere come funziona il proprio schema di database che si sta utilizzando, mentre il caso successivo è una veloce consultazionedei campi che compongono la tabella.
Sperando che questo post sia piaciuto vi saluto, dandoVi appuntamento per i prossimi post.