假如建了两个数据库,分别为 DB1 和 DB2,DB2中有一个表talbe2,当处理DB2中的数据时,先选定DB2,
如:use DB2; 然后通过MyEclipse往DB2中插数据,提示出错DB1.table2 not exists!,可是我已经选定了DB2了呀,
怎么会是错误的DB1来应用呢?请各位前辈们帮帮忙解答一下,感激不尽!!

解决方案 »

  1.   

    看看你的connection url及相关参数
      

  2.   

    程序只是连接了一个数据库,不能使用use 改变,必须重新建立一个指向DB2的连接。
      

  3.   

    通过MyEclipse  是指什么  是指程序吗?
    你的db1 和db2 是物理隔离 还是逻辑库
    前者需要建立两个连接,后者的话 一般情况下,table前面加上表空间名就可以访问了
      

  4.   

    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.SQLException;
    public class Test
    {
    private String db1_url="xxxx";
    private String db1_u_name="xxxx";
    private String db1_pwd="xxxx";

    private String db2_url="xxxx";
    private String db2_u_name="xxxx";
    private String db2_pwd;

    private String class_url="xxxx";

    private Connection conn;

    public Connection getConn(String db_name)
    {
    try {
    Class.forName(class_url);
    } catch (ClassNotFoundException e1) {
    e1.printStackTrace();
    }
    if("db1".equals(db_name))
    {
    try {
    conn = DriverManager.getConnection(db1_url,db1_u_name,db1_pwd);
    } catch (SQLException e) {
    e.printStackTrace();
    }
    }
    else if("db2".equals(db_name))
    {
    try {
    conn = DriverManager.getConnection(db2_url,db2_u_name,db2_pwd);
    } catch (SQLException e) {
    e.printStackTrace();
    }
    }
    return conn;
    }
    }