Canviant des de la consola característiques dels camps de les taules a MySQL

Canviant des de la consola característiques dels camps de les taules a MySQL

Ahir vaig detectar que les contrasenyes dels usuaris de Klaku, amb SHA1 i un algoritme de cifrat propi, eren massa llargues, i necessitava ampliar les característiques del camp de les contrasenyes. Per això aquestos apunts d'ací baix per a canviar, des de la consola del terminal, alguns camps de les meues taules i les seues característiques.

La manera de renombrar el nom i les característiques d'un camp seria:


ALTER TABLE nom_de_la_taula CHANGE camp camp_canviar noves_propietats;

Tal com veieu a la captura del terminal, ho vaig fer amb:


ALTER TABLE uzanto CHANGE pasvorto pasvorto varchar(200);

Si vullguerem afegir una columna que siga la clau primària:


ALTER TABLE nom_de_la_taula ADD PRIMARY KEY(nom_columna);

Si vullguerem que una taula numèrica tinga un valor autoincremental a partir del número 390 (per exemple) seria:


ALTER TABLE nom_de_la_taula AUTO_INCREMENT=390;

Si volem canviar el nom i el tipus de data d'una columna (el primer exemple que he mostrat):


ALTER TABLE nom_de_la_taula CHANGE nom_antic_columna nom_nou_columna VARCHAR(20);

Si nomès volem canviar el tipus de data d'una columna:


ALTER TABLE nom_de_la_taula MODIFY nom_columna DATE NOT NULL;

Si vols saber les característiques completes dels camps d'una taula pots fer show create table nom_de_la_taula:


novajxo | CREATE TABLE `novajxo` (
`id_novajxo` int(11) NOT NULL AUTO_INCREMENT,
`dato` int(11) NOT NULL,
`uzanto` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
`titolo` varchar(140) COLLATE utf8_unicode_ci DEFAULT NULL,
`ligilo` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL,
`total_pozitivoj` int(6) DEFAULT NULL,
`total_malpozitivoj` int(6) DEFAULT NULL,
`etikedoj` varchar(140) COLLATE utf8_unicode_ci DEFAULT NULL,
`kategorio` varchar(70) COLLATE utf8_unicode_ci DEFAULT NULL,
`sxtato` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,
`priskribo` text COLLATE utf8_unicode_ci,
PRIMARY KEY (`id_novajxo`)
) ENGINE=InnoDB AUTO_INCREMENT=10742 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci

Un altre article interessant que vaig fer fa temps és Esborrar al vol totes les taules d'una base de dades MySQL. Espere que trobes útils aquestos apunts ;-)