执行插入数据SQL语句,到终端窗口执行查找命令,中文显示乱码

执行插入数据SQL语句,到终端窗口执行查找命令,中文显示乱码

package com.imooc.mysql.job;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;

import org.junit.Test;

public class MysqlJdbcInsert {
	@Test
	public void insertData() {
		Connection connection = null;
		Statement statement = null;
		try {
			//1.注册驱动
			Class.forName("com.mysql.jdbc.Driver");
			//创建连接
			connection = DriverManager.getConnection("jdbc:mysql:///imooc", "root", "123456");
			//创建执行SQL语言的对象
			statement = connection.createStatement();
			//定义SQL语言
			String sql = "insert goods values(null,'耳机1',201,'蓝牙耳机1')";
			//执行SQL语句
			int i = statement.executeUpdate(sql);
			if (i > 0) {
				System.out.println("保存成功");
			}
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally {
			//释放资源
			if (connection != null) {
				try {
					connection.close();
				} catch (SQLException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
				connection = null;
			}
			if (statement != null) {
				try {
					statement.close();
				} catch (SQLException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
				statement = null;
			}
		}
	}

}

http://img1.sycdn.imooc.com//climg/5dba8fc20946b09c04000234.jpg

http://img1.sycdn.imooc.com//climg/5dba8fe609df4c1611940182.jpg

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

4回答
好帮手慕阿满 2019-11-01 17:56:48

同学你好,问一下同学有workbench或者其他的图形化工具吗?建议同学使用图像化工具插入数据在试试,另外jdbc插入数据后,同学可以使用图像化工具查看是否乱码?

MySQL窗口乱码还可能和窗口的编码方式有关。

祝:学习愉快~

好帮手慕阿满 2019-11-01 16:02:25

同学你好,建议同学使用如下命令查看一下表中的字段编码:

show full columns from goods;

如果不是utf8或utfmb4,可以使用如下命令设置字段的字符集:

alter table goods modify name varchar(45) character set utf8;

祝:学习愉快~

  • 提问者 棉花糖阿水 #1
    用你给的命令看了下,是utf8编码的
    2019-11-01 16:11:45
好帮手慕阿满 2019-10-31 18:09:17

同学你好,建议同学删除所有的乱码,重新插入再试试。比如在窗口中插入,使用jdbc插入等,查看是否还有乱码。

祝:学习愉快~

  • 提问者 棉花糖阿水 #1
    窗口中插入不了,报错(Incorrect string value: '\xCA\xD6\xBB\xFA' for column 'name' at row 1);jdbc插入还是老样子(中文会乱码)
    2019-11-01 11:26:14
好帮手慕阿满 2019-10-31 16:10:32

同学你好,这个可能是编码的原因造成的,建议同学使用show variables like 'character%';命令查看一下编码是否是utf8,如:

http://img1.sycdn.imooc.com//climg/5dba96ed0955d72a06590382.jpg

如果不是,使用set语句进行修改,如:set character_set_server=utf8;

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

  • 提问者 棉花糖阿水 #1
    没有解决,反而使原来不乱码的也乱码了
    2019-10-31 16:30:47
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师