1. 需要设置输入文字格式
'set names "gb2312"';
或者'set names "gbk"';
mysql_query(&mysql,"SET NAMES 'GBK'");
if(nback=mysql_real_query(&mysql,p,(unsigned long)strlen(p)))
{
const char *pErr=mysql_error(&mysql);
return false;
}
2.在mysql输入框输入
ALTER DATABASE 数据库名称 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
3.更改所有表和列编码
先生成所有表的更改语句,这样可以批量mysql所有表和列编码为utf8mb4
SELECT
CONCAT(
'ALTER TABLE ',
TABLE_NAME,
' CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;'
)
FROM
information_schema.`TABLES`
WHERE
TABLE_SCHEMA ='数据库名称';
4.更改数据库配置
数据库配置my.ini或my.cnf,你的配置可能不叫这个句子。
修改为如下配置:
[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
[mysqld]
collation-server = utf8mb4_general_ci
character-set-server = utf8mb4
更改之后重启mysql