Ⅰ 用java插入到mysql中出现乱码是什么原因
***Mysql数据库常见乱码处理方式***
------先分清是否是数据库乱码,如果是其它则用其它方式处理
说明:i>里面每条并不是说是一个解决办法,有时都要用到; ii>这些方法应该能解决常见的乱码问题,并且这些解决方法都很简捷。
1.在安装数据库的过程中将默认的拉丁文-->GBK。
2.在创建数据库时设置选择GBK或者gb2312。
3.Mysql安装目录下的my.ini文件,将 "default-character-set=xxxxx" 中的xxxxx改成GBK或者gb2312。
4.Mysql安装目录下的\data\databasename(数据库名)\db.opt文件打开
default-character-set=gbk
default-collation=gbk_chinese_ci; 如果上面不是gbk和gbk_chinese_ci则改成支持中文的GBK或者gb2312。
5.进入Mysql的dos命令下:进入某数据库后 show full columns from tablename ;查看数据类型,如果不是支持中
文的类型则执行alter table tablename convert to character set gbk 。
6.在创建数据库时(用命令创建时)create database databasename CHARACTER SET gbk;
这是我当年总结的,现在都用oracle了,越学忘记的越多了,不过mysql只要里面的几条必好使.
Ⅱ java 向数据库写入汉字的时候出现乱码
可能原因一:数据库不支持中文,或者是数据库编码格式和java代码编码格式不一致,这种情况需要修改数据库编码格式:
;改完编码后执行
sql>conn/assysdba;
sql>shutdownimmediate;
databaseclosed.
databasedismounted.
oracleinstanceshutdown.
sql>startupmount;
oracleinstancestarted.
fixedsize452044bytes
variablesize109051904bytes
databasebuffers25165824bytes
redobuffers667648bytes
databasemounted.
sql>;
systemaltered.
sql>altersystemsetjob_queue_processes=0;
systemaltered.
sql>altersystemsetaq_tm_processes=0;
systemaltered.
sql>alterdatabaseopen;
databasealtered.
sql>_useUTF-8;
sql>shutdownimmediate;
sql>startup;
可能原因二:java代码生成插入语句的时候,已经发生乱码现象,这种只能是修改项目编码格式或者是在数据获取的时候直接转译代码编码格式来实现了。
Ⅲ 【求助】java:向mysql数据库插入数据时中文乱码,但是java文件和数据库都是用UTF-8字
在tomcat里面 配置下你的字符编码!! 因为数据库没有错,java文件也没错,那肯定是server.xml里面的connector这个节点上的字符没有去配
Ⅳ java项目向mysql中插入中文出现乱码!求解!!!
就是乱码,本身UNICODE编码的中文按utf-8字符集保存,在数据库中保存的就是utf-8字符
简单的说一个汉字转换为两个utf-8字符了,在数据库中已不是汉字了。
java取回来是JDBC帮你转回来了
Ⅳ java中利用JDBC向MySql数据库中插入中文出现乱码,求解决办法
你应该是安装mysql的时候编码你是选择默认的吧。
你可以找到mysql的安装目录MySQL Server 5.0\bin\MySQLInstanceConfig.exe
重新配置下专就可以属了。一般选择utf-8编码。
再一个如果数据库开始就建立好了。alter database 表名 character set utf8;
连接数据库设置编码
jdbc:mysql://地址:3306/数据库名?characterEncoding=utf8
如果是windows的话
1、中止MySQL服务
2、在MySQL的安装目录下找到my.ini,如果没有就把my-medium.ini复制为一个my.ini即可
3、打开my.ini以后,在[client]和[mysqld]下面均加上default-character-set=utf8,保存并关闭
4、启动MySQL服务