You are on page 1of 9

public class BDCreate { Connection c; Statement s; ResultSet T; PreparedStatement pS; public BDCreate() { prepararConexion(); crearTablas(); } private Connection prepararConexion()

{ try { String controlador = "com.mysql.jdbc.Driver"; Class.forName(controlador).newInstance(); } catch (ClassNotFoundException | InstantiationException | IllegalAccess Exception ex) { JOptionPane.showMessageDialog(null, "Error al cargar el controlador. ", "Cargar Controlador", JOptionPane.ERROR_MESSAGE); } try { String bd = "test"; String user = "root"; String password = ""; String BaseDeDatos = "jdbc:mysql://localhost/" + bd + "?user=" + use r + "&password=" + password; c = DriverManager.getConnection(BaseDeDatos); } catch (SQLException ex) { JOptionPane.showMessageDialog(null, "Error al realizar la conexion." , "Crear Conexion", JOptionPane.ERROR_MESSAGE); } try { s = c.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.C ONCUR_READ_ONLY); } catch (Exception ex) { JOptionPane.showMessageDialog(null, "Error al crear el objeto senten cia.", "Crear Sentencia", JOptionPane.ERROR_MESSAGE); } return c; } private boolean verificarDB(String tab) { try { T = s.executeQuery("SHOW DATABASES"); while (T.next()) { String db = T.getString(1); if (db.equalsIgnoreCase(tab)) { return true; } } } catch (SQLException ex) { JOptionPane.showMessageDialog(null, "Error al consultar las tablas e xistentes.", "", JOptionPane.ERROR_MESSAGE); } return false; }

private void crearTablas() { try { boolean ex = verificarDB("BDSN"); if (!ex) { s.executeUpdate("CREATE DATABASE BDSN"); s.executeUpdate("USE BDSN"); //JOptionPane.showMessageDialog(null, "Base de datos creada exit osamente.", // "Crear SRP", JOptionPane.INFORMATION_MESSAGE); } else { s.executeUpdate("USE BDSN"); } T = s.executeQuery("SHOW TABLES"); if (!T.next()) { ex = false; } System.out.println(ex); if (!ex) { // TABLA seguridad, 3 CAMPOS s.executeUpdate("CREATE TABLE Persona(" + + + + + + + + + + + "cedula varchar(13) primary key not null," "nombre varchar(50) not null," "apellido varchar(50) not null," "sexo varchar(9) not null," "estadocivil varchar(15) not null," "telefono varchar(15) not null," "correo varchar(40) not null," "direccion text not null," "fechanaci date not null," "profesion varchar(28) not null," "observaciones text");

} if (!ex) { IniciarDatos(); } } catch (SQLException ex) { ex.printStackTrace(); JOptionPane.showMessageDialog(null, "Error al crear la base de\n dat os BDSISTEMADENOMINAS.", "Creando base de datos BDSISTEMADENOMINAS", JOptionPane.ERROR_MESSAG E); System.exit(0); } } /** * Mtodo para dar de alta a un empleado * * @param cedula * @param nombre * @param apellido * @param sexo

* @param estadocivil * @param telefono * @param correo * @param direccion * @param fechanaci * @param profesion * @param observaciones * @param estado */ public boolean agregarEmpleado(String cedula, String nombre, String apellido , String sexo, String estadocivil, String telefono, String correo, String direccion, String fechanaci, String profesion, String observaciones, String estado) { try { pS = c.prepareStatement("INSERT INTO empleado VALUES(?,?,?,?,?,?,?,? ,?,?,?,?)"); pS.setString(1, cedula); pS.setString(2, nombre); pS.setString(3, apellido); pS.setString(4, sexo); pS.setString(5, estadocivil); pS.setString(6, telefono); pS.setString(7, correo); pS.setString(8, direccion); pS.setString(9, fechanaci); pS.setString(10, profesion); pS.setString(11, observaciones); pS.setString(12,estado); pS.executeUpdate(); return true; } catch (SQLException ex) { JOptionPane.showMessageDialog(null, "Error registrando cliente", "DATOS - CLIENTE", JOptionPane.ERROR_MESSAGE); return false; } } /** * Mtodo * * @param * @param * @param * @param * @param * @param * @param * @param * @param * @param * @param * @param * @param * @param * @param * @param * @param * @param * @param para dar de alta a una nomina codigo fecha estadodenomina horastrabajadas diastrabajados inasistencias horasextraordinarias totalhorasextraordinarias antiempleado sueldobruto remuneraciones incentivos devengado multas deducciones retencion totalinasistencias sueldoneto cantidadhijos

*/ public boolean agregarNomina(String codigo,String fecha, String estadodenomi na, int horastrabajadas, int diastrabajados, int inasistencias , int horasextraordinarias,double totalhorasextraordinarias, int antie mpleado, double sueldobruto, double remuneraciones, double incentivos, double devengado, double multas, double deducciones , double retencion, double totalin asistencias, double sueldoneto,int cantidadhijos,String cedula) { try { pS = c.prepareStatement("INSERT INTO nomina VALUES(?,?,?,?,?,?,?,?,? ,?,?,?,?,?,?,?,?,?,?,?)"); pS.setString(1, codigo); pS.setString(2, fecha); pS.setString(3, estadodenomina); pS.setInt (4, horastrabajadas); pS.setInt (5, diastrabajados); pS.setInt (6, inasistencias); pS.setInt (7, horasextraordinarias); pS.setDouble(8, totalhorasextraordinarias); pS.setInt (9, antiempleado); pS.setDouble(10, sueldobruto); pS.setDouble(11, remuneraciones); pS.setDouble(12, incentivos); pS.setDouble(13, devengado); pS.setDouble(14,multas); pS.setDouble(15,deducciones); pS.setDouble(16,retencion); pS.setDouble(17,totalinasistencias); pS.setDouble(18, sueldoneto); pS.setDouble(19,cantidadhijos); pS.setString(20,cedula); pS.executeUpdate(); return true; } catch (SQLException ex) { ex.printStackTrace(); JOptionPane.showMessageDialog(null, "Error al insertar los datos en la tabla nomina.", "Datos - Nomina", JOptionPane.ERROR_MESSAGE); return false; } } public boolean modificarNomina(String codigo,String fecha, String estadodeno mina, int horastrabajadas, int diastrabajados, int inasistencias , int horasextraordinarias,double totalhorasextraordinarias, int antie mpleado, double sueldobruto, double remuneraciones, double incentivos, double devengado, double multas, double deducciones , double retencion, double totalin asistencias, double sueldoneto,int cantidadhijos,String cedula) { try { s.executeUpdate("DELETE FROM nomina where codigo='"+codigo+"'"); pS = c.prepareStatement("INSERT INTO nomina VALUES(?,?,?,?,?,?,?,?,? ,?,?,?,?,?,?,?,?,?,?,?)"); pS.setString(1, codigo);

pS.setString(2, fecha); pS.setString(3, estadodenomina); pS.setInt (4, horastrabajadas); pS.setInt (5, diastrabajados); pS.setInt (6, inasistencias); pS.setInt (7, horasextraordinarias); pS.setDouble(8, totalhorasextraordinarias); pS.setInt (9, antiempleado); pS.setDouble(10, sueldobruto); pS.setDouble(11, remuneraciones); pS.setDouble(12, incentivos); pS.setDouble(13, devengado); pS.setDouble(14,multas); pS.setDouble(15,deducciones); pS.setDouble(16,retencion); pS.setDouble(17,totalinasistencias); pS.setDouble(18, sueldoneto); pS.setDouble(19,cantidadhijos); pS.setString(20,cedula); pS.executeUpdate(); return true; } catch (SQLException ex) { ex.printStackTrace(); JOptionPane.showMessageDialog(null, "Error al modificar los datos en la tabla nomina.", "Datos - Nomina", JOptionPane.ERROR_MESSAGE); return false; } } /** * Mtodo para inciar los datos de prueba * * @param usuario usuario del sistema. * @param contrasea contrasea del sistema. * @param estado estado en el que se encuatra el sistema. */ private void agregarSeguridad(String usuario, String contrasea, int estado) { try { pS = c.prepareStatement("INSERT INTO seguridad VALUES (?,?,?)"); pS.setString(1, usuario); pS.setString(2, contrasea); pS.setInt (3, estado); pS.executeUpdate(); } catch (SQLException ex) { JOptionPane.showMessageDialog(null, "Error al agregar tabla segurida d.", "DATOS - CONTRASEA", JOptionPane.INFORMATION_MESSAGE); Panelprincipal volver = new Panelprincipal(); volver.setVisible(true); } } public void modificarContrasea(String oid, String nid) { try { pS = c.prepareStatement("UPDATE seguridad SET contrasea=? WHERE contr asea=?"); pS.setString(1, nid); pS.setString(2, oid); pS.executeUpdate();

JOptionPane.showMessageDialog(null, "Contrasea Modificada \ncon exito. ", "DATOS - CONTRASEA", JOptionPane.INFORMATION_MESSAGE); Panelprincipal volver = new Panelprincipal(); volver.setVisible(true); } catch (SQLException ex) { JOptionPane.showMessageDialog(null, "Error al modificar la contrasea. ", "DATOS - USUARIO", JOptionPane.ERROR_MESSAGE); } } public void modificarUsuario(String ouser, String nuser) { try { pS = c.prepareStatement("UPDATE seguridad SET usuario=? WHERE usuari o=?"); pS.setString(1, nuser); pS.setString(2, ouser); pS.executeUpdate(); JOptionPane.showMessageDialog(null, "Usuario Modificada \ncon exito." , "DATOS - Usuario", JOptionPane.INFORMATION_MESSAGE); Panelprincipal volver = new Panelprincipal(); volver.setVisible(true); } catch (SQLException ex) { JOptionPane.showMessageDialog(null, "Error al modificar la contrasea. ", "DATOS - USUARIO", JOptionPane.ERROR_MESSAGE); } } public void EliminarRegistro(String ced) { try { pS = c.prepareStatement("DELETE FROM empleado WHERE cedula=?"); pS.setString(1, ced); pS.executeUpdate(); JOptionPane.showMessageDialog(null, "Registro eliminado exitosamente .", "DATOS - Empleado", JOptionPane.INFORMATION_MESSAGE); } catch (SQLException ex) { JOptionPane.showMessageDialog(null, "Error al eliminar el registro." , "DATOS - Empleado", JOptionPane.ERROR_MESSAGE); } } public void EliminarNomina(String codigo) { try { pS = c.prepareStatement("DELETE FROM nomina WHERE codigo=?"); pS.setString(1, codigo); pS.executeUpdate(); JOptionPane.showMessageDialog(null, "Nomina eliminada exitosamente." , "DATOS - Nomina", JOptionPane.INFORMATION_MESSAGE); } catch (SQLException ex) { JOptionPane.showMessageDialog(null, "Error al eliminar la nomina.", "DATOS - Nomina", JOptionPane.ERROR_MESSAGE);

} } public void consultarCedula(String cedula) { try { pS = c.prepareStatement("SELECT cedula where cedula=?"); pS.setString(1, cedula); pS.executeUpdate(); } catch (SQLException ex) { JOptionPane.showMessageDialog(null, "Error al consultar cedula", "DATOS - CEDULA", JOptionPane.ERROR_MESSAGE); } } public void IniciarDatos() { //Empleados agregarEmpleado("V-22145186", "Luis", "Mejias", "Masculino", "Soltero", "0416-3126615", "luismanuel_mejias@hotmail.com", "Manzanillo", "1993/09/17", "L" , "L", "S"); /*agregarEmpleado("V-21663233", "Dejaline Gonzalez", "Femenino", "Solter a", "0414-6072056", "dejaladeja@hotmail.com", "5 de julio", "1960/01/02", "L", " L", "L"); agregarEmpleado("V-19569261", "Jose Coy", "Masculino", "Soltero", "0416 -4565455", "coyescoy597@hotmail.com", "Sierra Maestra", "1968/10/10", "L", "L", "L"); agregarEmpleado("V-7772126", "Victor Morales", "Masculino", "Casado", " 0424-6628392", "vok_t.m@hotmail.com", "Petare", "1966/04/06", "L", "L", "L");*/ agregarSeguridad("Luis Mejias", "22145188", 0); //agregarNomina("N22236", "2011/02/08", "e" , "Ingeniero en Computacion" , "oro", 2 , 27 ,256.265, 154.365 , 125.365 , 225.365, 2,125.250 , 256.256 ); //JOptionPane.showMessageDialog(null, "Datos de prueba ingresados.", "In gresar - Datos ", JOptionPane.INFORMATION_MESSAGE); } /** * Mtodo para consultar tablas cliente, poliza, personal, beneficiario, * servicios_medicos, vehiculo. * * @param tab Consultar tabla opciones: Usuario,Cliente, Poliza, Personal, * Beneficiario, Servicio, Vehiculo. * @return ResultSet de la tabla consultada. */ public ResultSet elegirTabla(String tipo) { switch (tipo) { case "Empleado": return consultarTabla("SELECT * FROM empleado"); case "Nomina": return consultarTabla("SELECT * FROM nomina"); case "Seguridad": return consultarTabla("SELECT * FROM seguridad"); } return null; } /** * Mtodo para consultar tablas por el CDIGO o cedula.

* * @param tipo Tipo de consulta * Beneficiario, Servicios Medicos. * @param cod Codigo de la nomina a consultar. * @return ResultSet de la tabla consultada. */ public ResultSet elegirTabla(String tipo, String contra, String usua) { switch (tipo) { case "Empleado": return consultarTabla("SELECT cedula cedula + "'"); case "Nomina": return consultarTabla("SELECT * FROM d + "'"); case "Seguridad Contrasea": return consultarTabla("SELECT * FROM + contra+ "'"); case "Seguridad Usuario": return consultarTabla("SELECT * FROM + usua+ "'"); } return null; }

cod, String cedula, String

empleado where cedula='" + nomina where codigo='" + co seguridad where contrasea='" seguridad where contrasea='"

/** * Mtodo para realizar una consulta. * * @param consulta Sentencia de consulta en MySQL * @return Un ResultSet con los datos de la tabla consultada. */ public ResultSet consultarTabla(String consulta) { try { T = s.executeQuery(consulta); } catch (SQLException ex) { JOptionPane.showMessageDialog(null, "Error al realizar la consulta:" + consulta + ".", "Consultando tabla.", JOptionPane.ERROR_MESSAGE); } return T; } /** * Mtodo para Eliminar una Nmina por su cdigo. * * @param cod Cdigo de la poliza a eliminar. */ public void eliminarNomina(String codigo) { System.out.println(codigo); try { s.executeUpdate("DELETE FROM nomina WHERE codigo='" + codigo + "'"); } catch (SQLException ex) { JOptionPane.showMessageDialog(null, "Error al eliminar la pliza.", "Consultando tabla.", JOptionPane.ERROR_MESSAGE); } } public void bloqueo(boolean estado){ try{

if(estado) { s.executeUpdate("UPDATE seguridad SET estadobloqueo=1"); }else{ s.executeUpdate("UPDATE seguridad SET estadobloqueo=0"); } }catch(Exception ex){ System.out.println("Error en el bloqueo del acceso"); } } /** * Mtodo para Eliminar al cliente. * * @param ced Cedla del cliente a Eliminar. Nota: Eliminar todas las * plizas asociadas. */ /* public void eliminarCliente(String ced) { System.out.println(ced); try { s.executeUpdate("DELETE FROM cliente WHERE cedula='" + ced + "'"); } catch (SQLException ex) { JOptionPane.showMessageDialog(null, "Error al eliminar la pliza.", "Consultando tabla.", JOptionPane.ERROR_MESSAGE); } } */ /** * Mtodo para realizar la desconeccin de la base de datos. */ public void desconectar() { try { T.close(); s.close(); c.close(); } catch (SQLException ex) { JOptionPane.showMessageDialog(null, "Error al cerrar la conexion.", "Cerrando conexion", JOptionPane.ERROR_MESSAGE); } } }

You might also like