Я просто пытаюсь проверить мое соединение с SQL Server 2008 следующим образом:
public class ForJDBC {
public static void main(String[] args) {
try{
Connection conn = DriverManager.getConnection("jdbc:sqlserver://XX.XX.X.XXX:1433;databaseName=MyDB;user=sa;password=mypassword");
if(conn != null){
System.out.println("Connection is Successfull");
}
}
catch(SQLException ex){
ex.printStackTrace();
}
}
}
Но я продолжаю получать следующее исключение:
com.microsoft.sqlserver.jdbc.SQLServerException: Login failed for user 'sa'. ClientConnectionId:96f7d048-9734-4fd8-8216-21231d89b2e6
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:216)
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:216)
at com.microsoft.sqlserver.jdbc.TDSTokenHandler.onEOF(tdsparser.java:254)
at com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:84)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:2908)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:2234)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.access$000(SQLServerConnection.java:41)
at com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:2220)
at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:5696)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1715)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1326)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:991)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:827)
at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1012)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:270)
at forjdbc.ForJDBC.main(ForJDBC.java:35)
Когда я подключаюсь к MySQL 5.5, он работает нормально.
Шаги устранения неполадок, которые я выполнил:
1) Пробное ведение журнала с именем пользователя и паролем "sa" в консоли управления SQL Server с помощью студии SQL Server Management
2) У меня есть sqljdbc4.jar в папке исходного пакета Netbeans 7.4
3) Обновлено до Java 8
Пожалуйста, дайте мне знать, что я делаю неправильно, и дайте мне знать, могу ли я ответить на любые вопросы.
Проблема с строкой соединения...
Class.forName( "com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection connection = DriverManager.getConnection("jdbc: sqlserver://localhost: 1433;\SQLEXPRESS; databaseName = Tema6", "sa", "123456")
Я думаю, вы пропустили загрузку класса Driver и зарегистрировали его.
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Если все еще не работает, пожалуйста, убедитесь, что службы SQLServer запущены
Нажмите SQL → щелкните правой кнопкой мыши → propretise → Securiti → отметьте SQL-сервер и режим проверки подлинности Windows
90% успеха!