1. 将表字段字符集设置成utf8mb4
2. 执行插入前执行:SET NAMES utf8mb4;
如:
SET NAMES utf8mb4;
INSERT test(Content) VALUES('~');
<insert id="insertOrUpdate">
SET NAMES utf8mb4;
INSERT INTO `wx_user`(`id`, `open_id`, `verified`, `verified_time`, `user_name`,
`gender`, `nick_name`, `phone_number`, `avatar`, `id_number`,
`platform`, `deleted`, `create_user`, `create_time`,
`update_user`, `update_time`)
VALUES
(
#{item.id},#{item.openId},#{item.verified},#{item.verifiedTime},#{item.userName},
#{item.gender},#{item.nickName},#{item.phoneNumber},#{item.avatar},#{item.idNumber},
#{item.platform},#{item.deleted},#{item.createUser},#{item.createTime},#{item.updateUser},
#{item.updateTime}
)
on duplicate key UPDATE
open_id = values(open_id),
verified = values(verified),
verified_time = values(verified_time),
user_name = values(user_name),
gender = values(gender),
nick_name = values(nick_name),
phone_number = values(phone_number),
avatar = values(avatar),
id_number = values(id_number),
platform = values(platform),
deleted = values(deleted),
create_user = values(create_user),
create_time = values(create_time),
update_user = values(update_user),
update_time = values(update_time);
</insert>