2010-04-09 4 views
3

Я пытаюсь подключиться к SQL Server 2008 сервер из JavaПодключение к SQL Server 2008 с Java

здесь программа

import java.sql.*; 

public class connectURL { 

    public static void main(String[] args) { 

     // Create a variable for the connection string. 
     String connectionUrl = "jdbc:sqlserver://localhost/SQLEXPRESS/Databases/HelloWorld:1433;";// + 
      //"databaseName=HelloWorld;integratedSecurity=true;"; 

     // Declare the JDBC objects. 
     Connection con = null; 
     Statement stmt = null; 
     ResultSet rs = null; 

      try { 
       // Establish the connection. 
       Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 
        con = DriverManager.getConnection(connectionUrl); 

        // Create and execute an SQL statement that returns some data. 
        String SQL = "SELECT TOP 10 * FROM Person.Contact"; 
        stmt = con.createStatement(); 
        rs = stmt.executeQuery(SQL); 

        // Iterate through the data in the result set and display it. 
        while (rs.next()) { 
         System.out.println(rs.getString(4) + " " + rs.getString(6)); 
        } 
      } 

     // Handle any errors that may have occurred. 
     catch (Exception e) { 
      e.printStackTrace(); 
     } 

     finally { 
      if (rs != null) try { rs.close(); } catch(Exception e) {} 
       if (stmt != null) try { stmt.close(); } catch(Exception e) {} 
       if (con != null) try { con.close(); } catch(Exception e) {} 
     } 
    } 
} 

Но это показывает ошибку как

com.microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the host localhost/SQLEXPRESS/Databases/HelloWorld, port 1433 has failed. Error: "null. Verify the connection properties, check that an instance of SQL Server is running on the host and accepting TCP/IP connections at the port, and that no firewall is blocking TCP connections to the port.". 
    at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170) 
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1049) 
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:833) 
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:716) 
    at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:841) 
    at java.sql.DriverManager.getConnection(Unknown Source) 
    at java.sql.DriverManager.getConnection(Unknown Source) 
    at connectURL.main(connectURL.java:43) 

I дали следующие инструкции, приведенные в http://teamtutorials.com/database-tutorials/configuring-and-creating-a-database-in-ms-sql-2008

В чем может быть проблема ?

+1

Можете ли вы подключиться через клиентские инструменты SQL Server? –

ответ

9

Я считаю, что URL-адрес подключения может быть неправильным. Затем попробуйте следующее соединение,

String Connectionurl="jdbc:sqlserver://localhost:1433;DatabaseName=YourDBName;user=UserName;Password=YourPassword" 
2

У вас есть localhost, указанный в вашем файле хостов? Попробуйте заменить localhost на 127.0.0.1 в URL-адресе подключения.

... и у вас есть SQL Server, работающий на том же компьютере, не так ли?

2

Соединения TCP/IP по умолчанию отключены при установке экспресс-версии SQL Server. Вам нужно запустить диспетчер конфигурации SQL Server и включить TCP/IP. Вам также необходимо установить порт, который он прослушивает, до 1433.

Смежные вопросы