Generare l'istruzione CREATE TABLE da una tabella esistente in MariaDB e MySQL

Mattepuffo's logo
Generare l'istruzione CREATE TABLE da una tabella esistente in MariaDB e MySQL

Generare l'istruzione CREATE TABLE da una tabella esistente in MariaDB e MySQL

Piccolo snippet di codice che ci permette di generare l'istruzione CREATE TABLE da una tabella già esistente.

Fidatevi, può essere utile.

In MariaDB e MySQL fare questa operazione è molto semplice:

SHOW CREATE TABLE rigord;

L'output sarà:

CREATE TABLE `rigord` (
  `rigord_id` int(11) NOT NULL AUTO_INCREMENT,
  `rigord_tesord_fk` int(11) DEFAULT NULL,
  `rigord_articolo_fk` char(7) DEFAULT NULL,
  `rigord_qta` smallint(6) DEFAULT NULL,
  `rigord_prezzo` decimal(5,2) DEFAULT NULL,
  `rigord_sconto` decimal(5,2) DEFAULT NULL,
  `rigord_prezzo_lordo` decimal(5,2) DEFAULT NULL,
  `rigord_sconto_2` decimal(5,2) DEFAULT NULL,
  `rigord_sconto_3` decimal(5,2) DEFAULT NULL,
  `rigord_qta_assegnata` smallint(6) DEFAULT NULL,
  `rigord_saldato` tinyint(1) DEFAULT NULL,
  `rigord_cliente_codice` int(11) DEFAULT NULL,
  `rigord_data_aggiunta` datetime DEFAULT NULL,
  PRIMARY KEY (`rigord_id`),
  UNIQUE KEY `tesord_nmat_uq` (`rigord_tesord_fk`,`rigord_articolo_fk`),
  KEY `rigord_tesord_fk` (`rigord_tesord_fk`),
  KEY `rigord_articolo_fk` (`rigord_articolo_fk`),
  KEY `rigord_cliente_codice` (`rigord_cliente_codice`),
  KEY `rigord_saldato` (`rigord_saldato`),
  CONSTRAINT `rigord_ibfk_1` FOREIGN KEY (`rigord_tesord_fk`) REFERENCES `tesord` (`tesord_id`) ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT `rigord_ibfk_2` FOREIGN KEY (`rigord_articolo_fk`) REFERENCES `articoli` (`articolo_npam`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB AUTO_INCREMENT=1840437 DEFAULT CHARSET=utf8

Vi ho preso un esempio "corposo" per mostrare che lo script di output è bello completo.

Come vedete sono comprese anche le FOREIGN KEY, indici, ecc.

Enjoy!


Condividi

Commentami!