java连接mysql插入中文乱码问题

刚开始接触jdbc时写了个例子程序连接mysql,插入中文时出现了乱码,而在mysql客户端插入中文时不会出现乱码。这时我就纠结了。各种百度,期间我了解了字符集编码,还不是很深入。知道了是编码不一致而导致的。于是乎,我就开始了统一编码和mysql的学习了。
期间,我通过show variables like ‘char%’命令查看编码,set character=编码来改变编码,但是一关闭MysqlClient端窗口再重新打开一个(我安装mysql后直接从程序中启动的,不是用命令的,而且后来我才知道我的mysql服务器是开机启动的),发现编码并没有改变,经过一些努力,通过命令关闭了mysql服务器又重新启动了服务器。这次编码就改变成了自己设定的。结果试验时又出现 了一点小问题。我创建了sql脚本文件p.sql,执行后出现如图错误,我一直想不通,我和其他的都一样啊,最后不甘心,和人家的一一比对,由于是在eclipse下编写的sql脚本文件,很容易的就发现了insert语句中values和后面的(间我少了空格,就改 了下,一执行竟然成功了,一个空格都能造成error,让我很无语。脚本代码如下:
use spj;
create table p
(
PNO char(5) primary key,
PNAME char(23),
COLOR char(13),
WEIGHT int
);

insert into p values('P1','螺丝','红',12);
insert into p values('P2','螺母','绿',15);
insert into p values('P3','螺丝刀','蓝',13);

一个空格就出错了。当这个问题解决了,java连接出现乱码的也好了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值