bitsCN.com
将某个mysql库中的utf8字符列都转成gbk格式
DELIMITER $$DROP PROCEDURE IF EXISTS `dba`.`Proc_ChangeCharacter2GBK`$$CREATE DEFINER=`root`@`%` PROCEDURE ` Proc_ChangeCharacter2GBK`(in DATABASENAME varchar(20))BEGIN DECLARE done INT DEFAULT 0; DECLARE a VARCHAR(64) DEFAULT ''; DECLARE b VARCHAR(64) DEFAULT ''; DECLARE c VARCHAR(64) DEFAULT ''; DECLARE d VARCHAR(64) DEFAULT ''; DECLARE l_sql VARCHAR(500); DECLARE AlterColumnsCharacter CURSOR FOR SELECT TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME,COLUMN_TYPE FROM information_schema.COLUMNS WHERE TABLE_SCHEMA=DATABASENAME and TABLE_NAME in ( SELECT B.TABLE_NAME FROM information_schema.TABLES B WHERE B.TABLE_SCHEMA=DATABASENAME AND B.TABLE_TYPE='BASE TABLE' ) and COLUMN_TYPE like '%VARCHAR%' and CHARACTER_SET_NAME='utf8' and COLLATION_NAME='utf8_general_ci'; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done=1; OPEN AlterColumnsCharacter; REPEAT FETCH AlterColumnsCharacter INTO a,b,c,d; if(done = 0) then SET l_sql=CONCAT(' alter table ',a, '.',b,' change ',c,' ',c,' ',d,' character set gbk collate gbk_chinese_ci NULL; '); SET @sql=l_sql; PREPARE s1 FROM @sql; EXECUTE s1; DEALLOCATE PREPARE s1; end if; UNTIL done END REPEAT; CLOSE AlterColumnsCharacter; END$$DELIMITER ;
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号