線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1611
推到 Plurk!
推到 Facebook!

从ORACLE中取出VARCHAR2型数据后显示成十六进制码,无论中英

尚未結案
fangwy
中階會員


發表:99
回覆:139
積分:62
註冊:2003-09-10

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-02-21 13:19:23 IP:218.5.xxx.xxx 未訂閱
我要实现的功能是从ORACLE数据库中取出数据并显示,但是用getString读出的VARCHAR2型字段的值显示出来都变成如'0x4D69636B6579'之类的乱码,不论中英文都一样,加入 str = new String(str.getBytes("ISO-8859-1"),"GBK")代码加以转换后也一样. 我用的是ORACLE8.0.5,我查看ORACLE字符集是ZHS16GBK 我想找了很多资料,但都没有解决. 谢谢!    我使用的是TOMCAT5.0+j2sdk1.4.2_06+ORACLE8.0.5 代码如下:

<%
int employeeId = empInfo.getId();
try{
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thinlocalhost:1521:hrdb"; 
//orcl为你的数据库的SID 
String user="fwy"; 
String password="fwy"; 
String str;
Connection conn= DriverManager.getConnection(url,user,password);
Statement statement=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql = "SELECT * FROM EMPLOYEEINFO WHERE ID ="   employeeId;
ResultSet rs = statement.executeQuery(sql);
while(rs.next()){
str = rs.getString("NAME");
str = new String(str.getBytes("ISO-8859-1"),"GBK");
%>
 
<%}//end while loop
}//end try block
catch(Exception e){}%>
Name: <%=str%>
Address: <%=rs.getString("ADDRESS")%>
Phone Number: <%=rs.getString("PHONE")%>
Work Status: <%=rs.getString("WORKSTATUS")%>
Total Sick Days: <%=rs.getString("TOTALSICKDAYS")%>
Taken Sick Days: <%=rs.getString("TAKENSICKDAYS")%>
Total Personal Time(in hours): <%=rs.getString("TOTALPERSONALTIME")%>
Taken Personal Time(in hours): <%=rs.getString("TAKENPERSONALTIME")%>
Health Care Plan: <%=rs.getString("HEALTHCAREPLAN")%>
Dental Plan: <%=rs.getString("DENTALPLAN")%>
Vision Plan: <%=rs.getString("VISIONPLAN")%>
fangwy
中階會員


發表:99
回覆:139
積分:62
註冊:2003-09-10

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-02-21 15:27:15 IP:218.5.xxx.xxx 未訂閱
我自己解决了: 将
Statement statement=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
这一句改成
Statement statement=conn.createStatement();
就OK了,中英文都正常显示. 但不知ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE是干嘛用的,删掉后对数据的处理会有什么影响,还需各位大大指教.
系統時間:2024-05-09 23:11:59
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!