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>
本文介绍了如何将数据库表字段的字符集设置为utf8mb4,并展示了在执行插入操作前使用SET NAMES utf8mb4的步骤。内容包括一个示例SQL插入语句,涉及字段包括用户ID、OpenID、验证状态等,以及在存在重复键时的更新策略。
2235

被折叠的 条评论
为什么被折叠?



