Ejemplo de origen de datos
Esta aplicación de ejemplo del controlador JDBC de Microsoft SQL Server 2005 muestra cómo conectar una base de datos de SQL Server a 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 connectDS.java y se encuentra en la siguiente ubicación:
<directorio de instalación>\sqljdbc_<version>\<language>\help\samples\connections
Requisitos
Para ejecutar esta aplicación de ejemplo, debe establecer la ruta de clase para incluir el archivo sqljdbc.jar. Si en la ruta de clase falta una entrada para sqljdbc.jar, la aplicación de ejemplo genera la excepción común "Clase no encontrada". Además, debe tener acceso a la base de datos de ejemplo AdventureWorks de SQL Server 2000.
Para obtener más información sobre cómo establecer la ruta de clase, consulte Usar el controlador JDBC.
Ejemplo
En el siguiente ejemplo, el código de ejemplo establece varias propiedades de conexión con métodos establecedores del objeto SQLServerDataSource y, a continuación, llama al método getConnection del objeto SQLServerDataSource para devolver un objeto SQLServerConnection.
Después, el código de ejemplo usa el método prepareCall del objeto SQLServerConnection para crear un objeto SQLServerCallableStatement y, a continuación, 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.*;
import com.microsoft.sqlserver.jdbc.*;
public class connectDS {
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("UserName");
ds.setPassword("*****");
ds.setServerName("localhost");
ds.setPortNumber(1433);
ds.setDatabaseName("AdventureWorks");
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);
}
}
}