Ejemplo de origen de datos
En esta aplicación de ejemplo de controlador JDBC de Microsoft para SQL Server se muestra cómo conectarse a una base de datos de SQL Server mediante un objeto de origen de datos. Además, muestra cómo recuperar los datos de una base de datos de SQL Server con un procedimiento almacenado.
El archivo de código para este ejemplo se llama ConnectDataSource.java y se encuentra en la siguiente ubicación:
\<installation directory>\sqljdbc_<version>\<language>\samples\connections
Requisitos
Para ejecutar esta aplicación de ejemplo, debe configurar la ruta de clase para que incluya el archivo mssql-jdbc.jar. Además, debe acceder a la base de datos de ejemplo AdventureWorks2022. Para obtener más información sobre cómo establecer la ruta de acceso de clase, consulte Usar el controlador JDBC.
Nota:
Microsoft JDBC Driver para SQL Server proporciona los archivos de biblioteca de clases mssql-jdbc que se usan según la configuración preferida de Java Runtime Environment (JRE). Para obtener más información acerca del archivo JAR que se debe seleccionar, consulte Requisitos del sistema para el controlador JDBC.
Ejemplo
En el siguiente ejemplo, el código establece varias propiedades de conexión con métodos establecedores del objeto SQLServerDataSource y, después, llama al método getConnection del objeto SQLServerDataSource para devolver un objeto SQLServerConnection.
Después, el código muestra usa el método prepareCall del objeto SQLServerConnection para crear un objeto SQLServerCallableStatement y, luego, se llama al método executeQuery para ejecutar el procedimiento almacenado.
Finalmente, el ejemplo usa el objeto SQLServerResultSet devuelto por el método executeQuery para procesar una iteración mediante los resultados devueltos por el procedimiento almacenado.
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import com.microsoft.sqlserver.jdbc.SQLServerDataSource;
public class ConnectDataSource {
public static void main(String[] args) {
// Create datasource.
SQLServerDataSource ds = new SQLServerDataSource();
ds.setUser("<user>");
ds.setPassword("<password>");
ds.setServerName("<server>");
ds.setPortNumber(<port>);
ds.setDatabaseName("AdventureWorks");
try (Connection con = ds.getConnection();
CallableStatement cstmt = con.prepareCall("{call dbo.uspGetEmployeeManagers(?)}");) {
// Execute a stored procedure that returns some data.
cstmt.setInt(1, 50);
ResultSet 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 (SQLException e) {
e.printStackTrace();
}
}
}