elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Tutorial básico de Quickjs


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Insertar registros en BD
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Insertar registros en BD  (Leído 4,471 veces)
Antoniio

Desconectado Desconectado

Mensajes: 121



Ver Perfil
Insertar registros en BD
« en: 10 Mayo 2016, 19:01 pm »

Hola, buenas. Estoy trabajando con una base de datos específica para este trabajo, lo que he logrado hasta ahora es comunicarme a la base e imprimir lo que tenemos en esas tablas. Mi pregunta es: ¿Cómo crear ventanas gráficas para capturar nuevos datos?, osea, crear por ejemplo un botón de "Insertar" que permita al usuario insertar cualquiera de los siguientes registros: un maestro, una materia, un eje de desarrollo o una seriacion de materias?...el código es este:
Código
  1. package unison.lcc;
  2.  
  3. import java.sql.Connection;
  4. import java.sql.DriverManager;
  5. import java.sql.ResultSet;
  6. import java.sql.ResultSetMetaData;
  7. import java.sql.SQLException;
  8. import java.sql.Statement;
  9. import java.util.logging.Level;
  10. import java.util.logging.Logger;
  11.  
  12. public class Principal {
  13.    public static void main(String[] args) {
  14.        // TODO code application logic here
  15.        ConectorBD conector1 = new ConectorBD();
  16.        conector1.abrir();
  17.        conector1.comunicar();
  18.        conector1.cerrar();
  19.    }
  20.  
  21.    private static class ConectorBD {
  22.        Connection conexion=null;
  23.        public ConectorBD() {
  24.        }
  25.  
  26.        private void abrir() {
  27.            try {
  28.                System.out.println("Abriendo BD");
  29.                conexion= DriverManager.getConnection(
  30.                        "jdbc:mysql://148.225.83.3:3306/e5ingsoft2",
  31.                        "e5ingsoft2", "7MLtw21");
  32.                System.out.println("Coenxion exitosa:"+conexion);
  33.            } catch (SQLException ex) {
  34.                System.out.println("error de conexion"+ex.toString());
  35.            }
  36.        }
  37.  
  38.        private void leer() {
  39.            System.out.println("Comunicando con la bd");
  40.            String sql = "SELECT * FROM maestro;";
  41.            if(this.conexion!=null){
  42.                try {
  43.                    //crear Sentencia
  44.                    Statement sentencia = conexion.createStatement();
  45.                    //ejecutar "query" en la bd
  46.                    ResultSet resultado = sentencia.executeQuery( sql );
  47.                    //imprimir resultados
  48.                    ResultSetMetaData meta = resultado.getMetaData();
  49.                    int n = meta.getColumnCount();
  50.                    for(int i=1; i<=n; i++){
  51.                        System.out.print("| "+ meta.getColumnName(i) + " |");
  52.                    }
  53.                    System.out.println("");
  54.                    while( resultado.next() ){
  55.                        System.out.print(resultado.getRow()+") ");
  56.                        for(int i=1; i<=n; i++){
  57.                            System.out.print(resultado.getObject(i) + " |");
  58.                        }
  59.                        System.out.println("");
  60. //                        System.out.println(resultado.getRow()+") "+
  61. //                                resultado.getObject(1) + " | " +
  62. //                                resultado.getObject(2)
  63. //                        );
  64.                    }
  65.                    System.out.println("");
  66.                } catch (SQLException ex) {
  67.                    System.out.println("Error en la lectura de bd:"+ex.toString());
  68.                }
  69.            }
  70.        }
  71.  
  72.        private void comunicar(){
  73.            this.insertar();
  74.            this.leer();
  75.        }
  76.  
  77.        private void cerrar() {
  78.            System.out.println("cerrando bd");
  79.            if(conexion!=null){
  80.                try {
  81.                    conexion.close();
  82.                    System.out.println("Gracias por usar BD. Conexion cerrada!"+conexion);
  83.                } catch (SQLException ex) {
  84.                    System.out.println("No puedo cerrar BD");
  85.                }
  86.            }
  87.        }
  88.  
  89.        private void insertar() {
  90.            System.out.println("insertando en la bd");
  91.            String sql = "INSERT INTO maestro values("+(int)(Math.random()*100000)+
  92.                    ", 'Desconocido', 662123456, \"Desconocida\");";
  93.            if(this.conexion!=null){
  94.                try {
  95.                    //crear Sentencia
  96.                    Statement sentencia = conexion.createStatement();
  97.                    //ejecutar "query" en la bd
  98.                    int resultado = sentencia.executeUpdate( sql );
  99.                    //imprimir resultados
  100.                    System.out.println("insercion realizada");
  101.                } catch (SQLException ex) {
  102.                    System.out.println("Error en la lectura de bd:"+ex.toString());
  103.                }
  104.            }
  105.        }
  106.    }    
  107. }

Alguna sugerencia??, gracias de antemano !!

Saludos.

MOD EDIT: Etiqueta GeSHi corregida.


« Última modificación: 10 Mayo 2016, 19:03 pm por MCKSys Argentina » En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re: Insertar registros en BD
« Respuesta #1 en: 10 Mayo 2016, 23:38 pm »

Puedes crearlos con las ventanas de la librería Swing.
Si nunca lo usaste, busca algñun tutorial o referencia. Aquí algo que te puede guiar: http://lineadecodigo.com/java/formulario-basico-con-java-swing/


En línea

Antoniio

Desconectado Desconectado

Mensajes: 121



Ver Perfil
Re: Insertar registros en BD
« Respuesta #2 en: 11 Mayo 2016, 09:10 am »

Gracias pero, crees que funcione del mismo modo al querer ingresar datos a la tabla?
En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re: Insertar registros en BD
« Respuesta #3 en: 11 Mayo 2016, 14:51 pm »

¿Por qué iba a funcionarde modo distinto?
Una vez el formulario haya sido rellenado, coges los datos, y los insertas.
En línea

Antoniio

Desconectado Desconectado

Mensajes: 121



Ver Perfil
Re: Insertar registros en BD
« Respuesta #4 en: 12 Mayo 2016, 19:52 pm »

Ya lo pude hacer!, gracias ;D
En línea

+ 1 Oculto(s)

Desconectado Desconectado

Mensajes: 298


un defecto se puede convertir en una virtud


Ver Perfil WWW
Re: Insertar registros en BD
« Respuesta #5 en: 13 Mayo 2016, 03:47 am »

utiliza javafx, swing ya esta muy obsoleto
En línea

hectornunezrivas

Desconectado Desconectado

Mensajes: 28


Ver Perfil
Re: Insertar registros en BD
« Respuesta #6 en: 25 Junio 2016, 07:56 am »

Buenas noches.
por alguna duda te dejo un link que esta muy bien explicado de como realizar todas estas operaciones.

http://www.c-sharpcorner.com/UploadFile/fd0172/display-records-from-database-using-jtable-in-java/

saludos.
En línea

DIANA KARINA HM

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Re: Insertar registros en BD
« Respuesta #7 en: 8 Agosto 2016, 17:49 pm »

Pues no se si te sirva pero aqui esta un ejemplo de insertar

public void insertarDatos(int rut,String nombre,String direccion,int fono){
this.rut=rut;
this.nombre=nombre;
this.direccion=direccion;
this.fono=fono;
System.out.println("Ingresando datos de la interfaz: " +rut+" "+nombre+" "+direccion+" "+fono);
Conexion conec = new Conexion();
try{
objConexion=conec.abrirConeccionBd(usuario, clave);
String sql = "INSERT INTO CLIENTE VALUES("+rut+",'"+nombre+"','"+direccion+"',"+fono +")";
conec.ejecutarTransaccion(sql, objConexion);
try{
System.out.println("Transaccion realizada al cliente");
}catch(Exception e){

}
}catch(Exception e){}
}
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines