JDBC+MySql 1(编码问题的处理)

windows下 MySQL编码乱码问题(以utf8为例):

一 首先创建数据库test1----设置数据库默认编码utf8

DROP database IF EXISTS `test1`;
CREATE database `test1` default character set utf8;
use `test1`;


二 使用数据库后设置utf8----设置 character_set_client , character_set_results , character_set_connection 三者都为utf8
SET names utf8;

三 创建表格后设置utf8----设置表格的编码类型

DROP TABLE IF EXISTS `t_user`;
CREATE TABLE t_user(
`id` int PRIMARY KEY auto_increment,
`username` varchar(30) NOT NULL COMMENT '用户',
`password` varchar(30) NOT NULL COMMENT '密码'
)ENGINE=InnoDB  DEFAULT CHARSET=utf8 ;

输入\s查看设置

得到:

Connection id:          15
Current database:       test
Current user:           root@localhost
SSL:                    Not in use
Using delimiter:        ;
Server version:         6.0.11-alpha-community MySQL Community Server (GPL)
Protocol version:       10
Connection:             localhost via TCP/IP
Server characterset:    utf8
Db     characterset:    utf8
Client characterset:    utf8
Conn.  characterset:    utf8

TCP port:               3306
Uptime:                 6 hours 21 min 45 sec

此时windows下,默认输入为gbk编码,在mysql中显示为gbk编码格式,而由于数据库的设置都是utf8

所以在数据库中显示的汉字为:utf8以gbk显示,显示为正常的乱码,不是???之类的


要插入数据需保证以utf8格式插入数据库,否则为乱码

四 jdbc下 连接数据库时,其中

url=jdbc:mysql:///test?useUnicode=true&characterEncoding=utf8   ----需注意:在xml文件中,没有&符号,需使用&


保证以上四点,jdbc访问数据库时 ,不会出现乱码问题

注意:

设置完以上四点后,在Mysql上直接输入中文,会导致编码错误,如查询,以中文的为限定条件,会导致,报错,如形如:没有/x3c2x2 

可以将代码写入如:test1.sql文件,来访问(将该文件设置为utf-8类型)

可以通过source D: //test1.sql;

导入D盘test1.sql文件




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值