Conectando SQL Server y Netbeans con JDBC – Parte 2
| I.- REQUISITOS |
- Haber configurado el Microsoft SQL Server 2005 ; sino lo hiciste visita esta entrada :
- NetBeans IDE
- Conector de SQL Server para Java , que se puede descargar de aquí .
- Una aplicación en Java, sino la tienes aquí crearemos una sencilla.
- La base de datos Pubs, si no la haz agregado a tu base de datos , lo puedes hacer de esta forma.
| II.- CREACIÓN DEL PROYECTO |
- Abrimos el NetBeans y creamos nuestro proyecto en el cual vamos a colocar un JPanel (PanelPrincipal) y un JFrame (Principal) ; vamos al PanelPrincipal al cual le damos el Border Layout ; en el NORTE colocaremos un botón y en el CENTRO un Text Area :
| OBSERVACIÓN :Antes de colocar un Txt Area es recomendable colocar un JScrollPane para poder visualizar el contenido que supera los limites del textArea |
- Ahora nos vamos al JFrame llamado Principal en el cual agregaremos el Panel que hemos creado previamente:
public Principal()
{
initComponents();
add(new PanelPrincipal());
setSize(500,400);
}
| III.- AGREGANDO EL JAR AL PROYECTO |
- Descomprimimos el conector que habíamos descargado previamente .
- Y encontraremos las siguientes carpetas :
- Agregamos las librerías sqljdbc y sqljdbc4 a nuestro proyecto ; para ello clic derecho el Libraries → Add JAR
| IV.- ESTABLECIENDO LA CONEXIÓN |
- Nos vamos al panel de nombre Panel Pricipal y importamos las siguientes librerías :
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
- Vamos a el diseño del gráfico y le damos doble clic en el boton Consultar para programar su acción y le agregamos el siguiente código:
private void btnConsultaActionPerformed(java.awt.event.ActionEvent evt) {
String connectionUrl = "jdbc:sqlserver://localhost:1433;" +
"databaseName=pubs;user=sa; password=adminadmin;";
// Declaramos los sioguientes objetos
Connection con = null;
Statement stmt = null;
ResultSet rs = null;
try {
//Establecemos la conexión
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
con = DriverManager.getConnection(connectionUrl);
// Create and execute an SQL statement that returns some data.
String SQL = "SELECT * FROM AUTHORS";
stmt = con.createStatement();
rs = stmt.executeQuery(SQL);
this.muestraData(rs);
}
catch (Exception e)
{
e.printStackTrace();
}
finally {
if (rs != null) try { rs.close(); } catch(Exception e) {}
if (stmt != null) try { stmt.close(); } catch(Exception e) {}
if (con != null) try { con.close(); } catch(Exception e) {}
}
}
- Finalmente vamos a crear nuestro método muestraData
public void muestraData(ResultSet r) throws Exception
{
ResultSetMetaData rmeta= r.getMetaData();
int numColumnas= rmeta.getColumnCount();//Cuántas columnas
txtSalida.setText("");
for(int i=1; i<=numColumnas; ++i)
//obtiene nombre de columna
txtSalida.append(rmeta.getColumnName(i) + "\t");
txtSalida.append("\n");
while(r.next())
{ // hasta fin de archivo
for(int i=1;i<=numColumnas;++i)
{
txtSalida.append(r.getString(i) + "\t");
}
txtSalida.append("\n");
}
}
- Hecho esto ejecutamos el proyecto y nos deberá salir lo siguiente :
- El ejemplo lo pueden descargar aquí :
| V.- ERRORES |
- Hay que actualizar el SQL Server 2005 al service Pack 3 para que esto pueda funcionar.