关于jdbc的两个简单问题,大家帮忙! 进行一下编码转换,String strTmp = new String (str.getBytes("ISO-8859-1"),"gb2312");str 是从数据库中取出来的8859 -1 编码转换为GB2312就行了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 楼上说的很明白,我这里要补充几句:如果数据库内数据是乱吗,你就得看看在插入时是否进行转化(转为iso8859_1)如果库内是正确的,就要在现实的时候,照楼上的转。good luck 至于下面的错误:程序显示"SQLException"异常:invalid descriptor index 你不妨将整条sql语句打印出来,然后再sql分析察看器中运行,具体看看错误在那里?good luck! 谢谢楼上两位大侠的指点!第一个问题已经明白了,但第二个问题还是不行,程序里的"select"语句在sql分析器里运行能显示结果,不知道错在哪里? import java.sql.*;import java.awt.*;import java.awt.event.*;class Acc_Win extends Thread { Frame f=new Frame("帐户查询"); TextArea text=new TextArea(); String str_sql,acc,name,addr;int limitfee,balance; Connection con;Statement sql;ResultSet rs; Acc_Win() { f.setBounds(150,150,300,120); f.setVisible(true); f.add(text,"Center");f.pack(); f.addWindowListener(new WindowAdapter() {public void windowClosing(WindowEvent e) {f.setVisible(false);System.exit(0);} }); try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");} catch(ClassNotFoundException e){} try{System.out.println("建立数据库连接"); con=DriverManager.getConnection("jdbc:odbc:account","",""); sql=con.createStatement(); } catch(SQLException e1){} } public void run() { while(true) {text.setText(null); try{System.out.println("查询数据库"); str_sql="select account,limitfee,companyname,address,balance from guestuser"; rs=sql.executeQuery(str_sql); while(rs.next()) { name=rs.getString("companyname"); acc=rs.getString("account"); addr=rs.getString("address"); limitfee=rs.getInt("limitfee"); balance=rs.getInt("balance"); text.append("帐户:"+acc+" "); text.append("用户名:"+name+" "); text.append("地址:"+addr+" "); text.append("限费额度:"+limitfee+" "); text.append("余额:"+balance+" "); text.append("\n"); } } catch(SQLException e1){System.out.println("Error:"+e1);} f.pack(); try{sleep(2000);} catch(InterruptedException exp){} } }}public class ex23_4{ public static void main(String args[]) {Acc_Win account_win=new Acc_Win(); account_win.start(); }} 程序显示"SQLException"异常:invalid descriptor index 木鱼兄,代码贴出来了,我在线等待! 谁能帮帮我啊!jar包抛异常问题! 新手问题:在排序好的数组中添加一个数字,将添加后的数字插入到数组合适的位置 Thinking in java 中的题目怎么做? 请问这里有人在用Java IDE工具--JawaBeginner的吗? socket问题,大家帮看一看? synchronized ……………………………非常奇怪的问题。 怎么让JDK跑起来? 怎样用JDK写用于ASP的组件?最好有例子或详细资料! 请问哪有适合jbuilder初学者的书籍可以下载(内空,谢谢了!!!) [怪象论坛]为什么总有那么多“我要……”? 关于Jbuilder中运行Applet的一个问题?谁来帮我?
如果数据库内数据是乱吗,你就得看看在插入时是否进行转化(转为iso8859_1)
如果库内是正确的,就要在现实的时候,照楼上的转。
good luck
程序显示"SQLException"异常:invalid descriptor index 你不妨将整条sql语句打印出来,然后再sql分析察看器中运行,具体看看错误在那里?good luck!
import java.awt.*;
import java.awt.event.*;class Acc_Win extends Thread
{
Frame f=new Frame("帐户查询");
TextArea text=new TextArea();
String str_sql,acc,name,addr;int limitfee,balance;
Connection con;Statement sql;ResultSet rs;
Acc_Win()
{
f.setBounds(150,150,300,120);
f.setVisible(true);
f.add(text,"Center");f.pack();
f.addWindowListener(new WindowAdapter()
{public void windowClosing(WindowEvent e)
{f.setVisible(false);System.exit(0);}
});
try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}
catch(ClassNotFoundException e){}
try{System.out.println("建立数据库连接");
con=DriverManager.getConnection("jdbc:odbc:account","","");
sql=con.createStatement();
}
catch(SQLException e1){}
}
public void run()
{
while(true)
{text.setText(null);
try{System.out.println("查询数据库");
str_sql="select account,limitfee,companyname,address,balance from guestuser";
rs=sql.executeQuery(str_sql);
while(rs.next())
{
name=rs.getString("companyname");
acc=rs.getString("account");
addr=rs.getString("address");
limitfee=rs.getInt("limitfee");
balance=rs.getInt("balance");
text.append("帐户:"+acc+" ");
text.append("用户名:"+name+" ");
text.append("地址:"+addr+" ");
text.append("限费额度:"+limitfee+" ");
text.append("余额:"+balance+" ");
text.append("\n");
}
}
catch(SQLException e1){System.out.println("Error:"+e1);}
f.pack();
try{sleep(2000);}
catch(InterruptedException exp){}
}
}
}
public class ex23_4
{
public static void main(String args[])
{Acc_Win account_win=new Acc_Win();
account_win.start();
}
}
程序显示"SQLException"异常:invalid descriptor index 木鱼兄,代码贴出来了,我在线等待!