Está en la página 1de 5

Conexion a SQL Server con NetBeans -Consultas

Objetivos:
Crear una aplicacion en NetBeans conectado a una Base de Datos en SQL Server 2008,en el cual
tenga los botones AGREGAR,ELIMINAR,NUEVO;
Requisitos:
*Driver sqljdbc4 (necesario para la conexion)
*Programar en capas (opcional),pero nos sirve para que este mas ordenado nuestros codigos y
sean reutilizables
Paso 1 :
Abrir SQL Server Management Studio ,y nos conectamos con la autenticacion de SQL Server (la
autenticacion de Windows dejemosla atras)
Paso 2 :
Crear una Base de datos (nombre opcional)en mi caso la llamare "Sistema"
Paso 3:
Crear la siguiente tabla:
Usuarios
-Usuario
-Clave
-Nivel
Paso 3:
Abrir el IDE NetBeans y crear una aplicacion (en mi caso yo voy crearlo usando capas)
CapaPrincipal = el main (para poder ejecutar nuestra aplicacion)
CapaCliente=a todos nuestros formularios
CapaModelo=todas nuestras clases
CapaRecursos=imagenes,etc
Paso 4 :
Nos ubicamos en la capa modelo y creamos una clase llamada "ConexBD" y colocamos el siguiente
codigo
package modelo;
import
import
import
import
import
import

java.sql.Connection;
java.sql.DriverManager;
java.sql.PreparedStatement;
java.sql.ResultSet;
java.sql.SQLException;
java.sql.Statement;

public class ConexBD {


protected PreparedStatement ps;
protected String bd;
protected Connection cn;
protected Statement st;
protected String sql;
protected ResultSet rs;
protected final String url = "jdbc:sqlserver://localhost;databasename=";
public ConexBD(String bd){

this.bd=bd;
try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
System.out.println("Driver Registrado");
cn=DriverManager.getConnection(url+bd,"sa","123");
System.out.println("Conexion Establecida");
st= cn.createStatement();
}catch(SQLException e1){
System.out.println("ERROR SQL:"+ e1.getMessage());
}
catch(ClassNotFoundException e2){
System.out.println("ERROR DRIVER:"+ e2.getMessage());
}
}
public String getBd() {
return bd;
}
public void setBd(String bd) {
this.bd = bd;
}
public Connection getCn() {
return cn;
}
public void setCn(Connection cn) {
this.cn = cn;
}
public Statement getSt() {
return st;
}
public void setSt(Statement st) {
this.st = st;
}
public String getSql() {
return sql;
}
public void setSql(String sql) {
this.sql = sql;
}
public ResultSet getRs() {
return rs;
}

public void setRs(ResultSet rs) {


this.rs = rs;
}

Paso 5 :
Creamos una clase en el mismo paquete llamada classusuario ,en esta clase pondremos todos
nuestros atributos,crearemos nuestro constructor ,los SET y los GET
//ATRIBUTOS
private String usuario;
private String clave;
private String nivel;
public classusuario(String usuario,String clave,String nivel){
this.usuario=usuario;
this.clave=clave;
this.nivel=nivel;
GET Y SET
public String getUsuario(){
return usuario;
}
public void setUsuario(String usuario){
this.usuario=usuario;
}
public String getclave(){
return clave;
}
public void setclave(String clave){
this.clave=clave;
}
public String getnivel(){
return nivel;
}
public void setnivel(String nivel){
}

this.nivel=nivel;

Paso 6:
Creamos nuestro formulario ,colocamos 3 TextField,3 botones (agregar,eliminar,nuevo) y una
tabla (a la cual llamaremos tbldatos)
*Al textfield usuario le pondremos el nombre de txtusuario
*Al textfield clave le pondremos el nombre de txtclave
*Al textfield nivel le pondremos el nombre de txtnivel
Paso 6 :
Nos ubicamos en el Public class del formulario y creamos una instancia de la clase "ConexBD"
colocamos lo siguiente :
ConexBD u1;
en el InitComponents:
u1=new ConexBD("Sistema");

listado();
Paso7 :
Como hacer para que al ejecutar mi aplicacion ,aparescan los registros ya guardados en mi tabla
de mi formulario ?? Hacemos los siguiente ,creamos el metodo listado
private void listado(){
String sql="SELECT * FROM USUARIOS";
try {
ResultSet rs=u1.getSt().executeQuery(sql);
DefaultTableModel m1=(DefaultTableModel)tbldatos.getModel();
m1.setRowCount(0);
while (rs.next()) {
Object []fila={rs.getString(1),rs.getString(2),rs.getString(3)};
m1.addRow(fila);
}
} catch (SQLException ex) {
Logger.getLogger(frmusuario.class.getName()).log(Level.SEVERE,null,ex);

Luego de hacer esto ,en el InitComponents llamamos el metodo listado,


Paso 8:
Hacemos doble click en el boton agregar o guardar y codificamos los siguiente:
String usuario;
String clave;
String nivel;
usuario=txtusuario.getText();
clave=txtclave.getText();
nivel=txtnivel.getText();
classusuario usu=new classusuario(usuario,clave,nivel); //hacemos referencia a la clase usuario
String sql="INSERT INTO usuarios VALUES ('"+usu.getUsuario()+"','"+usu.getclave()
+"','"+usu.getnivel()+"')";
try {
u1.getSt().executeUpdate(sql);
listado(); //LLAMAMOS AL LISTADO PARA QUE SE ACTUALIZE LA TABLA
JOptionPane.showMessageDialog(null,"Datos Guardados con Exito");
} catch (SQLException e1){
System.out.println("ERROR SQL:"+e1.getMessage());
Paso9 :
Nos ubicamos dentro del boton Eliminar y codificamos lo siguiente:
String cod =JOptionPane.showInputDialog(null, "Ingrese usuario a eliminar");
String sql="delete from usuarios where usuario='"+cod+"'";
try{

int resu=u1.getSt().executeUpdate(sql);
listado(); //PARA QUE SE ACTUALIZE AUTOMATICAMENTE LOS REGISTROS
if(resu==1){
JOptionPane.showMessageDialog(null, "REGISTRO ELIMINADO");
}
else{
JOptionPane.showMessageDialog(null, "REGISTRO NO ELIMINADO");
}
} catch (SQLException e1) {
JOptionPane.showMessageDialog(null, e1.getMessage());
}
Paso 10:
Nos ubicamos dentro del boton nuevo o limpiar y codificamos lo siguiente:
txtclave.setText("");
txtnivel.setText("");
txtusuario.setText("");
txtusuario.requestFocus();//esto es para que el punto de inicio sea el primer TextField
Paso 11 y ultimo :
Ejecutamos nuestra aplicacion

OJO: recuerden agregar la libreria sqljdbc4

También podría gustarte