JAVA的中文问题(25分)

  • 主题发起人 主题发起人 flai
  • 开始时间 开始时间
F

flai

Unregistered / Unconfirmed
GUEST, unregistred user!
各位大侠:
如果我的SQL语句中含有中文,在执行时就会提示syntax error或别的错误信息。
我用sql.getBytes("GB2312"), "ISO8859_1" )也不行,或者写入到库里的中文都
成了问号。

为什么?
谢谢!(不好意思,我只有25分了)
 
可能你数据库不支持中文,查查数据库吧
 
开发环境:中文WindowsNT,使用中文ACCESS97作为数据库。
 
为什么没有人回答?
 
问eguy去。
 
<%@ page contentType="text/html;charset=gb2312" %>
加上试试
 
是aplication的话用encoding ISO8859_1 编译试试
是jsp的话,看以前的贴子
 
请把您的程序列出来,
或者说明具体的情况,
大家也好回答
 
你是不是用了中文名来作字段名?
 
JAVA程序默认字符集是(UNICODE)
而中文WIN,数据库等产品,多以GKB或者GB2312为字符集
所以JAVA程序涉及数据库操作等,涉及不同字符集处理时
如果不指定 字符集的转换,就会出现 “?”号这问题
程序中要对含中文的处理,显式转换一下。
 
byte[] b;
rs.getByte(1);//取第一个字段,假设该字段内容是中文
String s;
s = new String(b,"8859_1");
另外,如果是使用大型数据库入sybase,oracle.直接使用jdbc驱动,不使用jdbc-odbc的方式
就不会出现中文问题了
 
多人接受答案了。
 
后退
顶部