【scala报错】java.sql.BatchUpdateException: Incorrect string value: '\xE4\xBA\xA7\xE5\x93\x81...' for column 'job_name' at row 1
一.场景
在使用IDEA编写scala程序时,为了实现从CSV文件写入MYSQL数据库时报错。
二.原因
在程序里使用utf-8编码,但创建数据库时没有指定编码,如不指定编码会使用默认latin1编码,这时候与程序使用的utf-8编码冲突。
三.解决
解决步骤:查看数据库和表的编码,修改数据库和表的编码,检查数据库和表的编码
1.查看数据库和表的编码
SHOW CREATE DATABASE mydb;SHOW CREATE TABLE mydb.user;
2.修改数据库和表的编码
ALTER DATABASE mydb DEFAULT CHARACTER SET utf8;ALTER TABLE mydb.user CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
3.检查数据库和表的编码
SHOW CREATE DATABASE mydb;SHOW CREATE TABLE mydb.user;
四.验证
重新跑程序后能执行成功。
本文介绍了一种在使用Scala程序将CSV文件内容写入MySQL数据库时遇到的java.sql.BatchUpdateException异常,并详细阐述了异常的原因在于编码不一致。文章提供了具体的解决步骤,包括如何检查、修改数据库和表的编码,最终确保程序正常运行。

1571

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



