站内搜索: 请输入搜索关键词

当前页面: 开发资料首页JSP 专题jsp中,对数据库中的英文字段访问没问题,而中文则无法访问?????????

jsp中,对数据库中的英文字段访问没问题,而中文则无法访问?????????

摘要: jsp中,对数据库中的英文字段访问没问题,而中文则无法访问?????????


下面是连接数据库的连接方法(在我的jsp页面中数据库的连接具体实现与该程序有所不同,但实质完全是一样的)
import java.sql.*;
public class TestDB {
public static void main(String[] args) {
String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
String dbURL = "jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=testdata";
String userName = "sa";
String userPwd = "";
Connection dbConn;

try {
Class.forName(driverName);
dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
Statement stmt = dbConn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY)

String sql = "select * from userinfo";
ResultSet rs = stmt.executeQuery(sql);

if(rs.next()){
............显示查询结果
}
}
catch (Exception e) {
e.printStackTrace();
System.out.println("数据库连接失败!");
}
}
}
问题——
我用以上方法在jsp页面中操作数据库,为什么只能识别数据库中的英文字符,中文字符无法识别呢?
例如:做登录判断时,在表userinfo中比较输入的用户名和数据库中的用户名,下面是我的sql语句
String sql = "select * from userinfo where name='" + username + "'";
此时,若字段为英文字符没问题,而中文字符则无法识别了(我用的是dreamweaver,字符集默认是gb2312,将其该为utf-8也不行)

请高手指点。


me too


你是说换中文后是乱码,还是提示错误?



问题已自己解决
在程序中加上.setCharacterEncoding("gb2312");


在连接的URL中要设定字符编码集.


从数据库中查出得数据先编码,在显示,就没问题了:



↑返回目录
前一篇: 『高分急求』关于jsp中javabean的运行环境配置的问题?
后一篇: jsp中如何在sql语句中获得系统当前时间!谢谢!