SQLyog
 sql >> Base de données >  >> Database Tools >> SQLyog

Définir la connexion/le serveur MySQL sur utf8mb4 au lieu de uft8 casse les procédures stockées dans SQLYog

De SQLyog :

SET NAMES 'utf8mb4' COLLATE 'utf8_bin';

Error Code: 1253
COLLATION 'utf8_bin' is not valid for CHARACTER SET 'utf8mb4'

essayez :

SET NAMES 'utf8mb4' COLLATE 'utf8mb4_bin';

L'utilisation de SQLyog Community v12.2.2 (64 bits) et MySQL 5.5.49 peut modifier (ouvrir) et créer de nouvelles procédures stockées sans problème.

VERSION()
-----------
5.5.49

SET NAMES 'utf8mb4' COLLATE  'utf8mb4_bin';

SET SESSION collation_connection = 'utf8mb4_bin',
            collation_server = 'utf8mb4_bin',
            collation_database = 'utf8mb4_bin';

SHOW VARIABLES WHERE
    `Variable_Name` != 'character_sets_dir' AND
    (`Variable_Name` LIKE '%CHAR%' OR
    `Variable_Name` LIKE '%COLL%');

Variable_name             Value        
------------------------  -------------
character_set_client      utf8mb4      
character_set_connection  utf8mb4      
character_set_database    utf8mb4      
character_set_filesystem  binary       
character_set_results     utf8mb4      
character_set_server      utf8mb4      
character_set_system      utf8         
collation_connection      utf8mb4_bin  
collation_database        utf8mb4_bin  
collation_server          utf8mb4_bin