Соедините SQL 2008 R2 с Java в затмении - PullRequest
0 голосов
/ 12 июля 2011

Я пытаюсь соединить Sql Server 2008 R2 с java, используя JDBC. Я скачал jar-файлы jdbc и добавил их в eclipse. Когда я пытаюсь подключиться к sql 2008 R2, появляется следующая ошибка. Я использую порт по умолчанию 1433. Должен ли я изменить настройки на стороне sql.

Это мой код.

package SocketClient;

import java.sql.*;
import com.microsoft.sqlserver.jdbc.*;

 public class SocketClient {

    public static void main(String[] args) {

  // Declare the JDBC objects.
  Connection con = null;
  CallableStatement cstmt = null;
  ResultSet rs = null;

  try {
     // Establish the connection. 
     SQLServerDataSource ds = new SQLServerDataSource();
     ds.setUser("sa");
     ds.setPassword("password123");
     ds.setServerName("ENMEDIA-EA6278E\\ENMEDIA");
     ds.setPortNumber(1433); 
     ds.setDatabaseName("DishTV_Voting");
     con = ds.getConnection();

     // Execute a stored procedure that returns some data.
     cstmt = con.prepareCall("{call dbo.uspGetEmployeeManagers(?)}");
     cstmt.setInt(1, 50);
     rs = cstmt.executeQuery();

     // Iterate through the data in the result set and display it.
     while (rs.next()) {
        System.out.println("EMPLOYEE: " + rs.getString("LastName") + 
           ", " + rs.getString("FirstName"));
        System.out.println("MANAGER: " + rs.getString("ManagerLastName") + 
           ", " + rs.getString("ManagerFirstName"));
        System.out.println();
     }
  }

  // Handle any errors that may have occurred.
  catch (Exception e) {
     e.printStackTrace();
  }
  finally {
     if (rs != null) try { rs.close(); } catch(Exception e) {}
     if (cstmt != null) try { cstmt.close(); } catch(Exception e) {}
     if (con != null) try { con.close(); } catch(Exception e) {}
     System.exit(1);
  }
 }
}

ошибка, которую я получаю при подключении к sql

com.microsoft.sqlserver.jdbc.SQLServerException: Соединение TCP / IP с хостом ENMEDIA-EA6278E, порт 1433, не выполнено. Ошибка: «Соединение отказано: соединение. Проверьте свойства соединения, убедитесь, что экземпляр SQL Server работает на хосте и принимает соединения TCP / IP на порту, и что ни один брандмауэр не блокирует соединения TCP с портом». в com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError (SQLServerException.java:170) на com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper (SQLServerConnection.java:1049) на com.microsoft.sqlserver.jdbc.SQLServerConnection.login (SQLServerConnection.java:833) на com.microsoft.sqlserver.jdbc.SQLServerConnection.connect (SQLServerConnection.java:716) в com.microsoft.sqlserver.jdbc.SQLServerDataSource.getConnectionInternal (SQLServerDataSource.java:577) в com.microsoft.sqlserver.jdbc.SQLServerDataSource.getConnection (SQLServerDataSource.java:57) в SocketClient.SocketClient.main (SocketClient.java:23)

Может ли кто-нибудь указать мне, где я ошибся. Заранее спасибо. Любое руководство по подключению SQL с Java вместе с установкой

Ответы [ 2 ]

2 голосов
/ 12 июля 2011

Проверьте, настроен ли SQL Server (через настройку контактной зоны) для приема удаленных соединений TCP / IP.

0 голосов
/ 12 июля 2011

Соединение отказано: подключиться.Проверьте свойства соединения, убедитесь, что экземпляр SQL Server работает на хосте и принимает соединения TCP / IP на порту, и что никакой брандмауэр не блокирует соединения TCP с портом.

Подсказкив вашем стеке трассировки указывают на заблокированное соединение.Хотелось бы проверить, можно ли установить соединение другими способами (ping, клиент базы данных, telnet, ...).Есть плагин Eclipse для изучения баз данных;если вы можете установить соединение там ...

Cheers, Wim

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...