[mysqld]
basedir=D:/mysql
datadir=D:/mysql/data
default-character-set=gb2312[WinMySQLadmin]
Server=D:/mysql/bin/mysqld-nt.exe
user=root
password=abc123
basedir=D:/mysql
datadir=D:/mysql/data
default-character-set=gb2312[WinMySQLadmin]
Server=D:/mysql/bin/mysqld-nt.exe
user=root
password=abc123
我试了N次,结果还是一片乱码,怎么办呢。
我只有用str = new String(str.getBytes("gb2312"),"iso-8859-1") ;转换一下才能插入中文
难道还有哪里错了吗?
你放入什么东东,
就能取出什么东东,
不会依据 default-character-set=gb2312 的配置而发生改变,default-character-set=gb2312 的作用仅仅作用于排序与检索应该注意的就是,
你以什么内码形式保存入数据
那么在读取时也要以这样的内码形式显示出来
插入时还必须转换为iso-8859-1形式,取出还得再转为GB2312,才能正确显示汉字
没有其它办法改变一下吗,让只需要一次转换就行?
MSN : [email protected]
我用的是resin2.1.6与mysql4.0.16,以下为全部代码
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page language="java" import="java.sql.*,java.util.*"%>
<%
String DBDriver="com.caucho.jdbc.mysql.Driver";
String ConnStr="jdbc:mysql_caucho://localhost:3306/ssp";
String MyUser="root";
String MyPassword="abc123";
Class.forName(DBDriver);
Connection conn = DriverManager.getConnection(ConnStr,MyUser,MyPassword);
Statement stmt=conn.createStatement();
String str="你好";
str = new String(str.getBytes("gb2312"),"iso-8859-1") ;
String sql="insert into user values('','"+str+"')";
stmt.executeUpdate(sql);
sql="select * from user";
ResultSet rs = stmt.executeQuery(sql);
while(rs.next()) {
String aa=rs.getString(2);
aa=new String(aa.getBytes("iso-8859-1"),"gb2312");
out.print("<p><font color='#800000'>");
out.print(aa);
out.print("</p></font>");
}
%>
java.sql.SQLException: Unknown database 'ssp?useunicode=true&characterencoding=gb2312'
谁能帮帮我,谁有resin+mysql的代码,
[email protected]