Поделиться через


Работа с подключением

Скачать драйвер JDBC

В следующих разделах приведены примеры различных способов подключения к базе данных SQL Server с помощью класса SQLServerConnection драйвера Microsoft JDBC для SQL Server.

Примечание.

Если у вас возникли проблемы с подключением к SQL Server с помощью драйвера JDBC, ознакомьтесь с рекомендациями по устранению неполадок с подключением .

Установка подключения с использованием класса DriverManager

Самый простой подход к созданию подключения к базе данных SQL Server заключается в загрузке драйвера JDBC и вызове метода getConnection класса DriverManager, как показано ниже.

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");  
String connectionUrl = "jdbc:sqlserver://localhost;encrypt=true;database=AdventureWorks;integratedSecurity=true;"  
Connection con = DriverManager.getConnection(connectionUrl);  

По этой методике подключение к базе данных будет создано с помощью первого доступного драйвера из списка драйверов, способных успешно подсоединиться к данному URL-адресу.

Примечание.

При использовании библиотеки классов sqljdbc4.jar приложениям не обязательно явно регистрировать или загружать драйвер с помощью метода Class.forName. При вызове метода getConnection класса DriverManager подходящий драйвер выбирается из набора зарегистрированных драйверов JDBC. Дополнительные сведения об использовании JDBC см. в разделе "Использование драйвера JDBC".

Установка подключения с использованием класса SQLServerDriver

Если нужно указать конкретный драйвер из списка драйверов для DriverManager, то можно создать подключение к базе данных с помощью метода connect класса SQLServerDriver:

Driver d = (Driver) Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();  
String connectionUrl = "jdbc:sqlserver://localhost;encrypt=true;database=AdventureWorks;integratedSecurity=true;"  
Connection con = d.connect(connectionUrl, new Properties());  

Установка подключения с использованием класса SQLServerDataSource

При необходимости создать соединение с помощью класса SQLServerDataSource можно использовать различные методы задания класса, после чего вызывается метод getConnection:

SQLServerDataSource ds = new SQLServerDataSource();  
ds.setUser("MyUserName");  
ds.setPassword("*****");  
ds.setServerName("localhost");  
ds.setPortNumber(1433);
ds.setDatabaseName("AdventureWorks");  
Connection con = ds.getConnection();  

Установка подключения, предназначенного для конкретного источника данных

Создать подключение к базе данных, целью которого является конкретный источник данных, можно несколькими способами. Каждый способ зависит от свойств, задаваемых с помощью URL-адреса соединения.

Подключиться к экземпляру по умолчанию на удаленном сервере можно следующим образом:

String url = "jdbc:sqlserver://MyServer;encrypt=true;integratedSecurity=true;"

Подключиться к конкретному порту на сервере можно следующим образом:

String url = "jdbc:sqlserver://MyServer:1533;encrypt=true;integratedSecurity=true;"

Подключиться к именованному экземпляру на сервере можно следующим образом:

String url = "jdbc:sqlserver://209.196.43.19;encrypt=true;instanceName=INSTANCE1;integratedSecurity=true;"

Подключиться к конкретной базе данных на сервере можно следующим образом:

String url = "jdbc:sqlserver://172.31.255.255;encrypt=true;database=AdventureWorks;integratedSecurity=true;"

Дополнительные примеры URL-адресов подключений см. в статье о создании URL-адреса подключения.

Установка подключения с настраиваемым временем сохранения учетных данных

Если приходится подстраиваться под нагрузку сервера или сети, можно создать соединение с заданным временем сохранения учетных данных в секундах:

String url = "jdbc:sqlserver://MyServer;encrypt=true;loginTimeout=90;integratedSecurity=true;"

Установка подключения с идентификацией на уровне приложения

Если для работы требуется ведение журнала и профилирование, то необходимо идентифицировать соединение по инициировавшему его приложению:

String url = "jdbc:sqlserver://MyServer;encrypt=true;applicationName=MYAPP.EXE;integratedSecurity=true;"

Закрытие подключения

Подключение к базе данных можно явно закрыть путем вызова метода close класса SQLServerConnection:

con.close();

Освобождение ресурсов базы данных, используемых объектом SQLServerConnection, или возврат соединения в пул соединений в сценариях с пулами.

Примечание.

Вызов метода close также приведет к откату любой ожидающей выполнения транзакции.

См. также

Подключение к SQL Server с помощью JDBC Driver