Java - Problema con Conexion JAVA a base de datos MySQL

 
Vista:
sin imagen de perfil
Val: 7
Ha disminuido 1 puesto en Java (en relación al último mes)
Gráfica de Java

Problema con Conexion JAVA a base de datos MySQL

Publicado por Bryan Alfonso (3 intervenciones) el 02/10/2019 05:40:26
Hola, tengo un problema al momento de realizar mis sentencias, mi problema empieza al momento de querer mostrar solo un campo de la tabla de la base de datos con un jtable, por favor si alguien me puede ayudar.

Lo que quiero mostrar es " SELECT "columna" FROM "tabla";


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
Conexion cn = new Conexion();
PreparedStatement pst;
ResultSet rs = null;
 
DefaultTableModel modelo = new DefaultTableModel();
modelo.addColumn("Id ");
modelo.addColumn("Nombre ");
modelo.addColumn("id Productos ");
 
tabla.setModel(modelo);
 
try {
pst = cn.con.prepareStatement(txtentrada.getText());
rs = pst.executeQuery();
String com = "SERVICIOS";
String com1 = "EMPRESA";
String com2 = "ALIMENTOS";
String com3 = "ANIMALES";
String com4 = "CLIENTES";
 
String guar;
 
guar = txtentrada.getText();
boolean resul = guar.contains(com);
boolean resul1 = guar.contains(com1);
boolean resul2, resul3, resul4,resul5,resul6,resul7,resul8,resul9,resul10,resul11,resul12,resul13,resul14,resul15,resul16,resul17,resul18,resul19;
resul2 = guar.contains(com2);
resul3 = guar.contains(com3);
 
 
 
 
 
 
/**
* ************************************* TABLA ********************************************
*/
 
String[] datos = new String[150];
 
while (rs.next()) {
if (resul) {
 
 
 
datos[0] = rs.getString(1);
 
datos[1] = rs.getString(2);
}
if (resul1) {
datos[0] = rs.getString(1);
datos[1] = rs.getString(2);
datos[2] = rs.getString(3);
}
if(resul3){
datos[0]=rs.getString(1);
datos[1]=rs.getString(2);
datos[2]=rs.getString(3);
datos[3]=rs.getString(4);
datos[4]=rs.getString(5);
datos[5]=rs.getString(6);
}
if(resul3){
datos[0]=rs.getString(1);
datos[1]=rs.getString(2);
datos[2]=rs.getString(3);
datos[3]=rs.getString(4);
datos[4]=rs.getString(5);
datos[5]=rs.getString(6);
}
/*datos[0] = rs.getString(1);
datos[1] = rs.getString(2);



//datos[2] = res.getString(3);
*/
modelo.addRow(datos);
 
tabla.setModel(modelo);
String[] vacio = datos;
}
} catch (SQLException ex) {
Logger.getLogger(Conex.class.getName()).log(Level.SEVERE, null, ex);
}




El error que me aparece es COLUM INDEX OUT OF RAGE, AL MOMENTO DE QUERER MOSTRAR UNA TABLA.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Billy Joel
Val: 1.831
Oro
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Problema con Conexion JAVA a base de datos MySQL

Publicado por Billy Joel (475 intervenciones) el 02/10/2019 16:55:22
Yo lo haría así:
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
private void cargarModelo() {
    Conexion cn = new Conexion();
    PreparedStatement pst;
    ResultSet rs = null;
    //DefaultTableModel modelo = new DefaultTableModel();
    DefaultTableModel modelo = null;
    //modelo.addColumn("Id ");
    //modelo.addColumn("Nombre ");
    //modelo.addColumn("id Productos ");
    //tabla.setModel(modelo);
    try {
        pst = cn.con.prepareStatement(txtentrada.getText());
        rs = pst.executeQuery();
        String com = "SERVICIOS";
        String com1 = "EMPRESA";
        String com2 = "ALIMENTOS";
        String com3 = "ANIMALES";
        String com4 = "CLIENTES";
        String guar;
        guar = txtentrada.getText();
        boolean resul = guar.contains(com);
        boolean resul1 = guar.contains(com1);
        boolean resul2, resul3, resul4, resul5, resul6, resul7, resul8, resul9, resul10, resul11, resul12, resul13, resul14, resul15, resul16, resul17, resul18, resul19;
        resul2 = guar.contains(com2);
        resul3 = guar.contains(com3);
 
        /**
         *
         * ******************************* TABLA ***************************
         *
         */
        //String[] datos = new String[150];
        //while (rs.next()) {
        //    if (resul) {
        //        datos[0] = rs.getString(1);
        //        datos[1] = rs.getString(2);
        //    }
        //    if (resul1) {
        //        datos[0] = rs.getString(1);
        //        datos[1] = rs.getString(2);
        //        datos[2] = rs.getString(3);
        //    }
        //    if (resul3) {
        //        datos[0] = rs.getString(1);
        //        datos[1] = rs.getString(2);
        //        datos[2] = rs.getString(3);
        //        datos[3] = rs.getString(4);
        //        datos[4] = rs.getString(5);
        //        datos[5] = rs.getString(6);
        //    }
        //    if (resul3) {
        //        datos[0] = rs.getString(1);
        //        datos[1] = rs.getString(2);
        //        datos[2] = rs.getString(3);
        //        datos[3] = rs.getString(4);
        //        datos[4] = rs.getString(5);
        //        datos[5] = rs.getString(6);
        //    }
        //    /*  datos[0] = rs.getString(1);
        //        datos[1] = rs.getString(2);
        //        /datos[2] = res.getString(3);
        //     */
        //    modelo.addRow(datos);
        //    tabla.setModel(modelo);
        //    String[] vacio = datos;
        //}
 
        int columnas = rs.getMetaData().getColumnCount();
        List<String[]> results = new ArrayList();
        while(rs.next()){
            String [] row = new String[columnas];
            for (int i = 0; i < row.length; i++) {
                row[i] = rs.getString(i+1);
            }
            results.add(row);
        }
        String [] columnNames = new String[columnas];
        for (int i = 0; i < columnNames.length; i++) {
            columnNames[i] = rs.getMetaData().getColumnName(i+1);
        }
        String [][] data = new String[results.size()][columnas];
        for (int i = 0; i < data.length; i++) {
            data[i] = results.get(i);
        }
        tabla.setModel(new DefaultTableModel(data, columnNames));
    } catch (SQLException ex) {
        Logger.getLogger(Conex.class.getName()).log(Level.SEVERE, null, ex);
    }
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar