mysql中文乱码问题的解决方法,经实际检验可以用的
网上的解决方法大多是要修改mysql配置文件,对我们不适合。jhost主页上看到篇文章,但里面说的驱动早就是老驱动了,怀疑他是从网上复制过来的老版本,不知是否能用。现在把我自己的解决方案贴出来,供大家参考,欢迎批评指正。
大家注意红色部分,废话不多说:
第一步:网页头设置:
<%@ page contentType="text/html; charset=gb2312" language="java"
import="java.sql.*" %>
第二步:request设置:
<%
request.setCharacterEncoding("gbk");
%>
第三步:bean中连接mysql代码设置:
MySqldriver = "com.mysql.jdbc.Driver";
MySqlURL = "jdbc:mysql://";
MySqlURL =MySqlURL+server+":"+port+"/"+dbname+"?user="+user+"&password="+pass+"&useUnicode=true&characterEncoding=utf8";
第四步:
汉字存入之前先g2i,取出汉字之后先i2g转换,然后就可以在jsp页面上正确显示了
其中g2i函数和i2g函数分别如下:
public static String g2i(String s0){
try{
return new String(s0.getBytes(),"ISO-8859-1");
}catch(Exception e){
return "转换异常";}
}
public static String i2g(String s0){
try{
return new String(s0.getBytes("ISO-8859-1"),"gb2312");
}catch(Exception e){
return "转换异常";}
}
相关文档:
注:本文讨论的范围为未启用MAXDB模式的表!
今天建了一个表,里面有一个列是timestamp类型,我本意是在数据更新时,这个字段的时间能自动更新。岂知对这个类型的值还不甚了解,导致出错。发现这个字段只是在这行数据建立的时候有值,在更新的却无变化。
查找资料,发现是我 ......
1. 停到运行的mysql: /etc/init.d/mysql stop
2. 使用skip-grant-tables这个选项启动MySQL: /usr/bin/mysqld_safe --skip-grant-tables &
3. 现在可以不用密码进入mysql 了。
# myql
>   ......
大小写敏感性
1、数据库和表名
在MySQL中,数据库和表对应于在那些目录下的目录和文件,因而,内在的操作系统的敏感性决定数据库和表命名的大小写敏感性。这意味着数据库和表名在Unix上是区分大小写的,而在Win32上忽略大小写。
注意:在Win32上,尽管数据库和表名是忽略大小写的,你不应该在同一个查询中使用 ......
如何导入.sql文件到mysql中?
C:\mysql\bin>mysql -u 用户名 -p 数据库名 < c:/test.sql (source "c:\adsense.sql" )
中间的空格是一个空格位。
同时使用200多MB的sql文件。
例如:
C:\Program Files\MySQL\bin>mysql -u root -p myrosz & ......