今天弄mysql数据库,一开始是不能输入中文,输入了就提示data too long ,然后设置了一下字符集,就像这样,create XX
{
}
ENGINE=InnoDB DEFAULT CHARSET=utf8 ;
好了,现在可以输入中文了,但是一点保存,怎么就变成??了呢,我在网上看帖子,有人让我输入这个命令
show variables like '%char%';
显示如下:
character_set_client utf8
character_set_connection latin1
character_set_database latin1
character_set_filesystem binary
character_set_results utf8
character_set_server latin1
character_set_system utf8
character_sets_dir D:\\MySQL\\MySQL Server 5.0\\share\\charsets\\怎么还有那么多latin1呢?应该怎么做?我已经改了my.ini 的utf8了
{
}
ENGINE=InnoDB DEFAULT CHARSET=utf8 ;
好了,现在可以输入中文了,但是一点保存,怎么就变成??了呢,我在网上看帖子,有人让我输入这个命令
show variables like '%char%';
显示如下:
character_set_client utf8
character_set_connection latin1
character_set_database latin1
character_set_filesystem binary
character_set_results utf8
character_set_server latin1
character_set_system utf8
character_sets_dir D:\\MySQL\\MySQL Server 5.0\\share\\charsets\\怎么还有那么多latin1呢?应该怎么做?我已经改了my.ini 的utf8了
解决方案 »
- 安装dzx1.5时出现Can't connect to MySQL server on 'localhost' (10061)
- 请问如何查看mysql 的端口号?
- mysql数据库的time类型字段不能插入空值了,何故?
- MySql无法启动的问题(非常见)。
- Lost connection to MySQL
- 这联合查询怎么有问题?
- mysql的group问题
- 请问在MYSQL中,外壳程序是指什么?
- 请问,在sql server 2000中如何用sql语句对文本文件进行操作?(例如,读一行,写一行的诸如此类操作)是否,sql语言根本没这个功能的?
- 求一个mysql的存储过程..
- mysql存储过程
- 关于mysql中自动增长列
运行 SET NAMES UTF8 试试
session=HibernateSessionFactory.getSession();
tx=session.beginTransaction();
session.save(user);
tx.commit();
变量栏里面的数据一直都是中文的,那是不是说明在提交的过程中没有问题,只是在存入数据库的时候出了问题?我该怎么解决?
将default-character-set=latin1 将latin
改为gb2312(注意两处),
修改后一定重启mysql,还要删掉以前的数据库 重新建库,mysql就不会出现乱码
下面是我的其中一部分:
[mysql]
no-beep
default-character-set=gb2312
# SERVER SECTION
# ----------------------------------------------------------------------
#
# The following options will be read by the MySQL Server. Make sure that
# you have installed the server correctly (see above) so it reads this
# file.
#
[mysqld]# The TCP/IP Port the MySQL Server will listen on
port=3306
#Path to installation directory. All paths are usually resolved relative to this.
basedir="C:/Program Files/MySQL/MySQL Server 5.0/"#Path to the database root
datadir="C:/Program Files/MySQL/MySQL Server 5.0/Data/"# The default character set that will be used when a new schema or table is
# created and no character set is defined
default-character-set=utf8# The default storage engine that will be used when create new tables when
default-storage-engine=INNODB# Set the SQL mode to strict
#sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
网页HTML的语言是什么啊,查看一下,设置成UTF-8吧
1.MYSQL建库问题,对字段设置是不是GBK或GB2312或UIF-8的,决对不能是默认值latin1。建库,表,字段都得注意到!!
2.JSP页面的把ISO-8859-1改成GB2312
3.在Hibernate里接收或传到页面的时候也得改成"GB2312"。REQUEST和RESPONSE。这样就没有问题了!我以前遇到过比较愈闷的乱码问题:
1.MYSQL建库的问题
2.在SERVLET里传值时没有写Response.SENCHAR("GB3212");
3.在JSP页面的部局差生错误时也会影响到输出数据!!
你自己检查一下看是哪一环节出了问题吧!然后就着重解决!如果MYSQL没有问题。那你就调试你的程序,看报什么样的错误!望成功!!