2013-11-29 42 views
0

我tride在eclipse获取异常值java.sql.SQLException:套接字创建错误

public static void main(String[] args) { 
    Connection connection = null; 
    ResultSet resultSet = null; 
    Statement statement = null; 

    try { 
     Class.forName("org.hsqldb.jdbcDriver"); 
     connection = DriverManager.getConnection("jdbc:hsqldb:hsql://localhost/URLAccess", "SA", ""); 
     statement = connection.createStatement(); 
     resultSet = statement.executeQuery("SELECT referrer FROM Access"); 
     while (resultSet.next()) { 
      System.out.println("referrer : "+ resultSet.getString("referrer")); 
     } 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } finally { 
     try { 
      resultSet.close(); 
      statement.close(); 
      connection.close(); 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
    } 
} 

运行下面的代码,但我得到以下异常 任何人都可以提出...

java.sql.SQLException: socket creation error 
    at org.hsqldb.jdbc.Util.sqlException(Unknown Source) 
    at org.hsqldb.jdbc.jdbcConnection.<init>(Unknown Source) 
    at org.hsqldb.jdbcDriver.getConnection(Unknown Source) 
    at org.hsqldb.jdbcDriver.connect(Unknown Source) 
    at java.sql.DriverManager.getConnection(DriverManager.java:582) 
    at java.sql.DriverManager.getConnection(DriverManager.java:185) 
    at testdriver.Hsqldb.main(Hsqldb.java:20) 
java.lang.NullPointerException 
    at testdriver.Hsqldb.main(Hsqldb.java:30) 

WHAT我试图做的是运行此查询来获取我的Hypersql数据库中的表(访问)的细节,并试图运行上述代码时,我得到了上述异常。

请在这方面提供帮助。期待您的解决方案。

+0

您需要指定端口号。在连接字符串中。例如。 '本地主机:5506'。 – user2339071

回答

1

我想你会得到这个错误,因为hsql服务器没有启动。我不熟悉的,但我发现这个命令来启动服务器:

java -classpath ../lib/hsqldb.jar org.hsqldb.Server 

退房的最后发表本question。另外检查出hsql documentation。最后,here更多的是运行hsql服务器。

相关问题