
Insertar registros en BD
Publicado por Antonio (2 intervenciones) el 10/05/2016 01:49:45
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:
Alguna sugerencia??, gracias de antemano !!
Saludos.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
package unison.lcc;
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;
public class Principal {
public static void main(String[] args) {
// TODO code application logic here
ConectorBD conector1 = new ConectorBD();
conector1.abrir();
conector1.comunicar();
conector1.cerrar();
}
private static class ConectorBD {
Connection conexion=null;
public ConectorBD() {
}
private void abrir() {
try {
System.out.println("Abriendo BD");
conexion= DriverManager.getConnection(
"jdbc:mysql://148.225.83.3:3306/e5ingsoft2",
"e5ingsoft2", "7MLtw21");
System.out.println("Coenxion exitosa:"+conexion);
} catch (SQLException ex) {
System.out.println("error de conexion"+ex.toString());
}
}
private void leer() {
System.out.println("Comunicando con la bd");
String sql = "SELECT * FROM maestro;";
if(this.conexion!=null){
try {
//crear Sentencia
Statement sentencia = conexion.createStatement();
//ejecutar "query" en la bd
ResultSet resultado = sentencia.executeQuery( sql );
//imprimir resultados
ResultSetMetaData meta = resultado.getMetaData();
int n = meta.getColumnCount();
for(int i=1; i<=n; i++){
System.out.print("| "+ meta.getColumnName(i) + " |");
}
System.out.println("");
while( resultado.next() ){
System.out.print(resultado.getRow()+") ");
for(int i=1; i<=n; i++){
System.out.print(resultado.getObject(i) + " |");
}
System.out.println("");
// System.out.println(resultado.getRow()+") "+
// resultado.getObject(1) + " | " +
// resultado.getObject(2)
// );
}
System.out.println("");
} catch (SQLException ex) {
System.out.println("Error en la lectura de bd:"+ex.toString());
}
}
}
private void comunicar(){
this.insertar();
this.leer();
}
private void cerrar() {
System.out.println("cerrando bd");
if(conexion!=null){
try {
conexion.close();
System.out.println("Gracias por usar BD. Conexion cerrada!"+conexion);
} catch (SQLException ex) {
System.out.println("No puedo cerrar BD");
}
}
}
private void insertar() {
System.out.println("insertando en la bd");
String sql = "INSERT INTO maestro values("+(int)(Math.random()*100000)+
", 'Desconocido', 662123456, \"Desconocida\");";
if(this.conexion!=null){
try {
//crear Sentencia
Statement sentencia = conexion.createStatement();
//ejecutar "query" en la bd
int resultado = sentencia.executeUpdate( sql );
//imprimir resultados
System.out.println("insercion realizada");
} catch (SQLException ex) {
System.out.println("Error en la lectura de bd:"+ex.toString());
}
}
}
}
}
Alguna sugerencia??, gracias de antemano !!
Saludos.
Valora esta pregunta


0