正在回答
3回答
1、报错原因是插入的数据是传进去的的数据编码类型是UTF8MB4,而MySQL里的是UTF8MB3,它建议改编码。
2、办法:
首先查看下mysql字符集
SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';
根据结果,修改我们的创建语句
修改前 = 'CREATE DATABASE IF NOT EXISTS database_name DEFAULT CHARSET utf8 COLLATE utf8_general_ci;'
修改后 = 'CREATE DATABASE IF NOT EXISTS database_name DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_0900_ai_ci;'
或者这里同学忽略就可以的。
2、警告不会影响结果,而报错会。
如果不存在就创建说明你的意思是如果之前存在可以保留之前的,说明你是允许不创建成功的情况的。
而如果说你一定要创建,可以改成,如果存在这个表我就删除,然后重新创建该表
drop table if exists 表名;
create table 表名(。。)
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
3. Java 数据库开发与实战应用
- 参与学习 人
- 提交作业 357 份
- 解答问题 8016 个
本阶段将带你学习MySQL数据库,JDBC接口,MyBatis框架等,带你掌握的数据的存放和管理。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星