Delimiter //
Drop procedure if exists changecharset//
Create procedure changecharset ()
Begin
Declare tname varchar(255) ;
Declare done int default 0;
Declare tc Cursor For
Select TABLE_NAME From information_schema.TABLES Where TABLE_SCHEMA = schema();
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = 1;
Open tc;
myloop: loop
Fetch tc into tname;
If done = 1 Then
Leave myloop;
End if ;
Set @query = Concat('Alter Table `', tname, '` convert to character set utf8 collate utf8_swedish_ci;');
PREPARE alterstmt FROM @query;
execute alterstmt ;
Deallocate prepare alterstmt;
End loop;
close tc;
End //
Delimiter ;
A toi de faire ta propre procédure au besoin.Code : Tout sélectionner
CREATE TABLE IF NOT EXISTS `view` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(30) CHARACTER SET latin1 NOT NULL,
`text` longtext CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=34 ;