线程main中的异常:IO异常

时间:2014-01-20 09:05:52

标签: java oracle jdbc

任何人都可以帮我解决这个问题,即使在我的程序中无法运行它之前删除@之前的localhost ...这次它给我错误了... “ Thread中的异常”main“java.sql.SQLException:IO异常:网络适配器无法建立连接

import java.sql.*;

class CreatingTable{
  public static void main(String[] ar) throws Exception {
    DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
    Connection con = DriverManager.getConnection("jdbc:oracle:thin:localhost:1521:xe","priyanka","java");
    Statement stmt=con.createStatement();
    int students=stmt.executeUpdate("create table class(name varchar2(20),rollno number(20)");
    con.close();
  }
}

2 个答案:

答案 0 :(得分:0)

RUN in Windows

打开Windows服务

Services in Windows

搜索 OracleServiceXE oraclexetnslistener 服务并启动服务

  

并尝试此示例

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

public class Main {
    public static void main(String args[]) {
        try {
            Class.forName("oracle.jdbc.driver.OracleDriver");
            String url = "jdbc:oracle:thin:@localhost:1521:XE";
            String userName = "suru";
            String password = "password";
            Connection con = DriverManager.getConnection(url, userName, password);
            System.out.println("Connection success!");
            Statement stmt = con.createStatement();
            String sql = "CREATE TABLE EMP ( ID NUMBER(5) PRIMARY KEY, NAME VARCHAR2(50))";
            stmt.execute(sql);
            System.out.println("Table created successfully!");
            stmt.close();
            con.close();
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

答案 1 :(得分:0)

您的代码似乎没有问题。 问题可能来自您本地的Oracle XE。

错误消息表示,oracle XE不接受连接。