Compartir vía


Trabajo con una conexión

Descargar controlador JDBC

En las siguientes secciones se proporcionan ejemplos de las diferentes formas de conectar con una base de datos de SQL Server mediante la clase SQLServerConnection del Microsoft JDBC Driver para SQL Server.

Nota

Si tiene problemas para conectarse a SQL Server con el controlador JDBC, vea Solución de problemas de conectividad, donde encontrará sugerencias sobre cómo corregirlos.

Crear una conexión con la clase DriverManager

El enfoque más sencillo para crear una conexión a una base de datos SQL Server es cargar el controlador JDBC y llamar al método getConnection de la clase DriverManager, como en el siguiente ejemplo:

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

Este técnica creará una conexión a una base de datos usando el primer controlador disponible de la lista de controladores que se pueda conectar correctamente con la URL dada.

Nota

Al usar la biblioteca de clases sqljdbc4.jar, las aplicaciones no necesitan registrar o cargar explícitamente el controlador usando el método Class.forName. Cuando se llama al método getConnection de la clase DriverManager, se busca un controlador apropiado en el conjunto de controladores JDBC registrados. Para obtener más información, vea Usar el controlador JDBC

Crear una conexión con la clase SQLServerDriver

Si tiene que especificar un controlador en particular de la lista de controladores para DriverManager, puede crear una conexión a una base de datos con el método connect de la clase SQLServerDriver, como en el siguiente ejemplo:

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());  

Crear una conexión con la clase SQLServerDataSource

Si tiene que crear una conexión mediante la clase SQLServerDataSource, puede usar diversos métodos de establecimiento de la clase antes de llamar al método getConnection, como en el siguiente ejemplo:

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

Creación de una conexión cuyo destino es un origen de datos específico

Si tiene que hacer una conexión a una base de datos cuyo destino es un origen de datos específico, hay varios enfoques posibles. Cada enfoque depende de las propiedades que configure mediante la URL de conexión.

Para conectarse a la instancia predeterminada de un servidor remoto, use el ejemplo siguiente:

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

Para conectarse a un puerto específico de un servidor, use el ejemplo siguiente:

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

Para conectarse a una instancia con nombre de un servidor, use el ejemplo siguiente:

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

Para conectarse a una base de datos específica de un servidor, use el ejemplo siguiente:

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

Para ver más ejemplos de direcciones URL de conexión, consulte Creación de la dirección URL de conexión.

Creación de una conexión con un tiempo de espera de inicio de sesión personalizado

Si tiene que ajustarse a la carga del servidor o el tráfico de red, puede crear una conexión que tenga un valor de tiempo de espera de inicio de sesión específico en segundos, como en el siguiente ejemplo:

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

Crear una conexión con identidad de nivel de aplicación

Si tiene que usar perfiles y registros, tendrá que identificar la conexión como originaria de una aplicación específica, como en el siguiente ejemplo:

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

Cerrar una conexión

Puede cerrar explícitamente una conexión a una base de datos llamando al método close de la clase SQLServerConnection, como en el siguiente ejemplo:

con.close();

De esta forma se liberarán los recursos de la base de datos que está usando el objeto SQLServerConnection, o devolver la conexión al grupo de conexiones en situaciones de agrupamiento.

Nota

Si llama al método close, también se revertirán todas las transacciones pendientes.

Consulte también

Conexión a SQL Server con el controlador JDBC