C'è un MySQL table
che ha questa definizione tratta da SQLYog Enterprise
:Come modificare il set di caratteri predefinito di una tabella MySQL?
Table Create Table
----------------- ---------------------------------------------------------
etape_prospection CREATE TABLE `etape_prospection` (
`etape_prosp_id` int(10) NOT NULL AUTO_INCREMENT,
`type_prosp_id` int(10) NOT NULL DEFAULT '0',
`prosp_id` int(10) NOT NULL DEFAULT '0',
`etape_prosp_date` datetime DEFAULT NULL,
`etape_prosp_comment` text,
PRIMARY KEY (`etape_prosp_id`),
KEY `concerne_fk` (`prosp_id`),
KEY `de_type_fk` (`type_prosp_id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1
voglio cambiare il default charset
di questo tavolo da latin1
a utf8
. Come farlo ?
Al contrario, se si utilizza la sintassi ALTER TABLE TBL 'CARATTERI utf8' come suggerito da altri, si cambierà solo la codifica predefinita per la tavola; le colonne esistenti non verranno convertite come faranno se si utilizza questa risposta. – eaj
Se si desidera applicare questa modifica per tutte le tabelle che non sono codificate in ut8 in un database, è possibile utilizzare questa query ed eseguire le query risultanti: 'SELECT concat ('alter table', table_name, 'CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci; ') FROM information_schema.tables WHERE table_schema =' 'e table_collation! =' Utf8_general_ci 'GROUP BY nome_tabella; ' –
Maxooo
questo non modifica il set di caratteri ** predefinito **. per cambiare il default fare come eak detto 'ALTER TABLE tbl CHARACTER SET utf8' –