建立了jdbc连接,但没有在eclipse控制台

时间:2016-10-07 07:21:16

标签: java sql eclipse oracle

我是这个论坛的新手......

我想将在eclipse中创建的java项目与oracle数据库xe,

连接起来

我按照以下链接中描述的程序进行操作 https://www.youtube.com/watch?v=fMp63HsIRbc

但它没有在eclipse控制台中打印结果,但它也没有抛出异常

应该是什么原因

这是我的代码

package dbmsoracle;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class Jdb {

public static void main(String[] args) {
    System.out.println("jen");
    try
    {
        Class.forName("oracle.jdbc.driver.OracleDriver");
        Connection con =        DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","system","murali123");
        Statement st = con.createStatement();
        String sql="select * from muhil";
        ResultSet rs =st.executeQuery(sql);
        while (rs.next())
        {
            System.out.println("executing ...");
            System.out.println(rs.getInt(1)+" "+rs.getInt(2));
            System.out.println("executed");
            con.close();

        }
    }
    catch (Exception e)
    {
        System.out.println("connection failed");
    System.out.println(e);  
    }

    }

我已经下载了我的jdbc驱动程序

Oracle Database 11g第2版(11.2.0.4)JDBC驱动程序 ojdbc6.jar 通过JDK 8,JDK 7和JDK 6认证:......

和iam使用jdk 8

4 个答案:

答案 0 :(得分:1)

首先检查您的连接是否与oracle数据库建立。这是连接代码试试这个

import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.SQLException;

public class OracleJDBC {

    public static void main(String[] argv) {

        System.out.println("-------- Oracle JDBC Connection Testing ------");

        try {

            Class.forName("oracle.jdbc.driver.OracleDriver");

        } catch (ClassNotFoundException e) {

            System.out.println("Where is your Oracle JDBC Driver?");
            e.printStackTrace();
            return;

        }

        System.out.println("Oracle JDBC Driver Registered!");

        Connection connection = null;

        try {

            connection = DriverManager.getConnection(
                    "jdbc:oracle:thin:@localhost:1521:xe","system","murali123");

        } catch (SQLException e) {

            System.out.println("Connection Failed! Check output console");
            e.printStackTrace();
            return;

        }

        if (connection != null) {
            System.out.println("You made it, take control your database now!");
        } else {
            System.out.println("Failed to make connection!");
        }
    }

}

答案 1 :(得分:0)

我有同样的问题。问题是你的代码没有捕获(SQLException e)。因为just catch(Exception e)不会使控制台中显示的sql异常。执行此操作后,您可能会发现Exception是“找不到适合jdbc的驱动程序”。

然后,您可以下载mysql-connector-java并将其添加到您的lib中,或者如果您的项目是Maven,您只需在pom文件中添加依赖项即可。

答案 2 :(得分:0)

使用Sql +输入数据库后,提交表。在终端上输入'commit'(不带引号),或者关闭Sql +终端。对于您的情况,将ID从24,253更改为1,2后,您必须关闭终端。这就是为什么它可以正常运行的原因。与ID从1开始无关

答案 3 :(得分:0)

首先检查表中是否有数据。看来您只是在编写上述代码之前创建了此表'muhil'。我很确定您也必须在新表中输入一些数据。只要确保您已在MYSQL Workbench中提交了事务即可。只需提交它,然后尝试再次在eclipse中运行代码即可。