为了测试jdbc的中文冷僻字问题 ,写了个测试程序 import java.sql.*;
import java.io.*;
import java.lang.*;
import java.text.SimpleDateFormat;public class JDBCTest { /**
 * @param args
 */
/**
 * @param args
 */
public static void main(String args[]) { String sql;
Statement stmt_q;
Statement stmt_u;
try {
// Connection connIn = DriverManager.getConnection("jdbc:sybase:Tds:101.101.101.119:4100/test","wonders", "wonders"); // 内网测试环境 琍 ?charset=eucgb&jconnect_version=6
// Class.forName("com.sybase.jdbc3.jdbc.SybDriver");
Connection connIn = DriverManager.getConnection("jcbc:mysql://localhost:3306/test","sichuang", ""); // 内网测试环境 琍 ?charset=eucgb&jconnect_version=6
Class.forName("com.mysql.jdbc.Driver");
stmt_q = connIn.createStatement();
sql = "select * from test";
stmt_q.executeQuery(sql);

stmt_q.close();
if (connIn!=null){
connIn.close();
connIn = null;
} /*stmt_u = connIn.createStatement();
sql = "update test2 set col1 = '许佩', col2 = 3 where col2 = 4";
stmt_u.executeUpdate(sql);

stmt_u.close();
connIn.close();*/
} catch (ClassNotFoundException e) {
System.out.println("11111111111");
e.printStackTrace();
} catch (SQLException e) {
System.out.println("22222222222");
e.printStackTrace();
} System.exit(0);
}}但问题是不能运行成功,报错:
java.sql.SQLException: No suitable driver
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at JDBCTest.main(JDBCTest.java:22)
22222222222
不管是用mysql还是sybase,烦!
classpath配好了,再jdk\jre\lib\ext\下面也放好了jconn3.jar和mysql-connector-java-5.0.5-bin.jar包。但就是不行。
请各位大侠帮忙看看 谢谢!!!

解决方案 »

  1.   

    jar包和源文件都放在一个文件夹下么?
      

  2.   

    将正确的JDBC驱动放在JDK_HOME\jre\lib\ext下
      

  3.   

    已经将驱动放到JDK_HOME\jre\lib\ext下了啊
      

  4.   

    又换了一下方式: public static void main(String args[]) { String sql;
    Statement stmt_q;
    Statement stmt_u;

    Connection connIn = null;
    try {
    try {
    Class.forName("com.sybase.jdbc3.jdbc.SybDriver");
    } catch (ClassNotFoundException e) {
    System.out.println("33333333333");
    e.printStackTrace();
    }
    } catch (RuntimeException e) {
    System.out.println("2222222222222");
    e.printStackTrace();
    }

    try {
    try {
    //connIn = DriverManager.getConnection("jdbc:sybase:Tds:101.101.101.22:4100/btKF","decrot", "decrot");
    connIn = DriverManager.getConnection("jdbc:sybase:Tds:101.101.101.119:4100/test","wonders", "wonders");
    } catch (SQLException e) {
    System.out.println("44444444444");
    e.printStackTrace();
    }
    } catch (RuntimeException e) {
    System.out.println("11111111111");
    e.printStackTrace();
    } System.exit(0);
    }}报异常总算变了
    44444444444
    java.sql.SQLException: JZ006: 捕获到 IO 例外:java.net.ConnectException: Connection refused: connect
    at com.sybase.jdbc3.jdbc.ErrorMessage.raiseError(Unknown Source)
    at com.sybase.jdbc3.jdbc.ErrorMessage.raiseErrorCheckDead(Unknown Source)
    at com.sybase.jdbc3.tds.Tds.a(Unknown Source)
    at com.sybase.jdbc3.tds.Tds.a(Unknown Source)
    at com.sybase.jdbc3.tds.Tds.login(Unknown Source)
    at com.sybase.jdbc3.jdbc.SybConnection.a(Unknown Source)
    at com.sybase.jdbc3.jdbc.SybConnection.a(Unknown Source)
    at com.sybase.jdbc3.jdbc.SybConnection.<init>(Unknown Source)
    at com.sybase.jdbc3.jdbc.SybConnection.<init>(Unknown Source)
    at com.sybase.jdbc3.jdbc.SybDriver.connect(Unknown Source)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at JDBCTest.main(JDBCTest.java:36)