Java与MySQL连接的有关问题
Java与MySQL连接的问题?
连接中的相关设置:
"jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=gb2312“
当我执行SQL语句:CREATE TABLE code(name varchar(255));
INSERT INTO code VALUES('中国');
后,却出现了如下异常:
SQLException has ocurred while executing the query:'Incorrect string value: '\xD6\xD0\xB9\xFA' for column 'name' at row 1' (error-code='1366', sqlstate='HY000').
这是为什么?
那们朋友知道!请帮个忙。
------解决方案--------------------
你 MySQL 的字符类型所使用的字符集没有设置。
解决方法一:
将建表语句改为:
CREATE TABLE code(name varchar(255) CHARACTER SET gbk);
即在每个字符类型说明后加上。
解决方法二:
可以先停掉 MySQL 服务,找到 MySQL 的目录下的 my.ini 文件,
找到 [mysqld] 组,在里面加上:default-character-set=GBK,
重启 MySQL 服务,将原来的数据库删除,重新建库这样默认的字符
集就是 GBK,而不是 Latin1 了。
以上两个方法都可以解决,但是强烈推荐方法二(方法一太麻烦得一个一
个字段的设)。
------解决方案--------------------
jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=gb2312
换成
jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=gb2312
就ok了!
------解决方案--------------------
jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=gb2312
换成
jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=gb2312
就ok了!
=========================
显然不对路!
my.ini里面的
[client]
port=3306
[mysql]
default-character-set=xxxx
修改为:
default-character-set=你所要的字符!
------解决方案--------------------
LZ直接在MySQL的命令行运行下那条插入语句能成功么?
连接中的相关设置:
"jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=gb2312“
当我执行SQL语句:CREATE TABLE code(name varchar(255));
INSERT INTO code VALUES('中国');
后,却出现了如下异常:
SQLException has ocurred while executing the query:'Incorrect string value: '\xD6\xD0\xB9\xFA' for column 'name' at row 1' (error-code='1366', sqlstate='HY000').
这是为什么?
那们朋友知道!请帮个忙。
------解决方案--------------------
你 MySQL 的字符类型所使用的字符集没有设置。
解决方法一:
将建表语句改为:
CREATE TABLE code(name varchar(255) CHARACTER SET gbk);
即在每个字符类型说明后加上。
解决方法二:
可以先停掉 MySQL 服务,找到 MySQL 的目录下的 my.ini 文件,
找到 [mysqld] 组,在里面加上:default-character-set=GBK,
重启 MySQL 服务,将原来的数据库删除,重新建库这样默认的字符
集就是 GBK,而不是 Latin1 了。
以上两个方法都可以解决,但是强烈推荐方法二(方法一太麻烦得一个一
个字段的设)。
------解决方案--------------------
jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=gb2312
换成
jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=gb2312
就ok了!
------解决方案--------------------
jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=gb2312
换成
jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=gb2312
就ok了!
=========================
显然不对路!
my.ini里面的
[client]
port=3306
[mysql]
default-character-set=xxxx
修改为:
default-character-set=你所要的字符!
------解决方案--------------------
LZ直接在MySQL的命令行运行下那条插入语句能成功么?