Documente Academic
Documente Profesional
Documente Cultură
Fuente: JCMouse
Modificado: Ing. Hernn Medina
Nuestro proyecto de Base de Datos se llamar "DBContactos", el cdigo contiene las funciones
bsicas que debe tener un proyecto de Base de Datos, aade nuevos registros, los elimina y
tambin puede modificar esos registros.
Esta compuesto de los siguientes capitulos.
1.
2.
3.
4.
5.
6.
7.
8.
package PAQUETE_QUE_USARA_ESTA_CLASE ;
import java.sql.*;
public class conectate {
static String bd = "NOMBRE_BASE_DE_DATOS";
static String login = "USUARIO";
static String password = "PASSWORD";
static String url = "jdbc:mysql://localhost/"+bd;
Connection conn = null;
public conectate() {
try{
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection(url,login,password);
if (conn!=null){
System.out.println("Coneccin a base de datos "+bd+". listo");
}
}catch(SQLException e){
System.out.println(e);
}catch(ClassNotFoundException e){
System.out.println(e);
}
}
public Connection getConnection(){
return conn;
}
public void desconectar(){
conn = null;
}
}
dbcontactos
dbcontactos
4. Crear una clase llamada Persona.java. En esta clase colocar el siguiente cdigo:
package dbcontactos;
public class Persona {
conectate con;
public Persona (){
con = new conectate();
}
}
5. Editar la clase llamada DBcontactos.java. Dentro del mtodo main colocar el siguiente cdigo:
package dbcontactos;
public class Main {
public static void main(String[] args) {
Persona p = new Persona ();
p.con.desconectar();
}
}
b. En la ventana que aparece, seleccionar MySql JDBC Driver. Presionar Add Library
8. Ejecutar el proyecto.
package dbcontactos;
import java.sql.*;
public class Persona {
conectate con;
public Persona (){
con = new conectate();
}
/*Aade un nuevo registro*/
public void nuevaPersona(String name, String ap, String am, String mail){
try {
String sSql = "INSERT INTO " +
"persona(Nombre, appPaterno, appMaterno, mail) " +
" VALUES(?,?,?,?)";
PreparedStatement pstm = con.getConnection().prepareStatement(sSql);
pstm.setString(1, name);
pstm.setString(2, ap);
pstm.setString(3, am);
pstm.setString(4, mail);
pstm.execute();
pstm.close();
}catch(SQLException e){
System.out.println(e);
}
}
}
5.
3. Explicacin: La nueva funcion GetDatos() esta definida como Object [][], tambien podemos definirla
como String[][], la funcion esta dividida en dos partes, la primera encargada de realizar una consulta para conocer
el numero de registros existentes y gurdarla en la variable "registros", la segunda parte de la funcion utilizando la
variable "registros" crea un objeto con esas dimensiones y realiza la consulta para extraer los datos y colocarlas en
la variable "data[][]" que es la que retorna
5. Ejecutar el programa:
Para poder eliminar un registro de la base de datos realizaremos una instruccion SQL con el comando DELETE, para ello
debemos tener muy en cuenta la estructura de nuestra tabla "Persona".
2.
En la clase persona.java, aadiremos el nuevo mtodo deletePersona(), dentro la cual colocaremos la instruccin SQL,
ejecutaremos la sentencia y cerramos.
3.
public void updatePersona(String id, String name, String paterno, String materno, String
mail){
String sSql = "UPDATE persona " +
"SET Nombre = ? ," +
"appPaterno = ? ," +
"appMaterno = ? ," +
"mail = ? " +
"WHERE id = ? ";
try {
PreparedStatement pstm = con.getConnection().prepareStatement(sSql);
pstm.setString(1, name);
pstm.setString(2, paterno);
pstm.setString(3, materno);
pstm.setString(4, mail);
pstm.setString(5, String.valueOf(id));
pstm.execute();
pstm.close();
} catch(SQLException e){
System.out.println(e);
}
}
3. Explicacin: este nuevo mtodo, recibe como parmetros el "id" cdigo del registro que
se modificara, adems de los datos necesarios para realizar la consulta, como el nombre,
apellido paterno , materno y el mail de la persona. Luego se realiza una consulta SQL
pasando esos datos.
4. Modificar el mtodo main, para actualizar registros:
8.
9. Modificar el mtodo getDatos(), para que capture todos los datos de la consulta, de
manera que quede de la siguiente forma:
data[i][0] = estCodigo;
data[i][1] = estNombre;
data[i][2] = estPaterno;
data[i][3] = estMaterno;
data[i][4] = estMail;
i++;
}
res.close();
}catch(SQLException e){
System.out.println(e);
}
return data;
}
14.Explicacin: Este cdigo lo que hace es revisar si la variable "fila" contiene un valor
diferente a "-1",esto sucede cuando se realiza un clic sobre el objeto "tblPersona", si
esto es cierto, quiere decir que tenemos una fila seleccionada, por lo tanto proceder a
extraer el cdigo correspondiente y con este cdigo hara un llamado a
deletePersona(codigo), elimina el registro y reinicia el valor de fila a -1 para evitar
inconvenientes.
= txtPaterno.getText();
= txtMaterno.getText();
19.Lo nico que hace es capturar los datos del JTable, asignarlas a variables y llamar al
mtodo actualizaTabla ().