Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    11

    stampare elementi di un database in colonna.

    Ciao a tutti,
    ho un database sqlite dove all' interno sono salvati alcune dati, attraverso java sono riuscito a stamparli così, diciamo in maniera standard:

    ID = 1
    MODELLO = mocassino
    MISURA = 43
    COLORE = giallo
    MARCA = gucci
    SESSO = M


    vorrei sapere se esiste un metodo che riesce a stampare a video i dati all' interno di un database in colonne?
    Questa è la stampa che vorrei visualizzare o almeno una cosa simile.

    ID | MODELLO | MISURA | COLORE | MARCA | SESSO|
    1 | MOCASSINO | 43 | GIALLO | GUCCI | M |

    Facendo delle ricerche sono riuscito a integrare un ciclo for che mi stampa i dati, ma non come desidero.

    vi posto il codice.
    codice:
    public static void visualizza() {
            try {
                Class.forName("org.sqlite.JDBC");
                try (Connection c = DriverManager.getConnection("jdbc:sqlite:" + nome_db + ".db")) {
                    c.setAutoCommit(false);
                    try (Statement stmt = c.createStatement();
                            ResultSet rs = stmt.executeQuery("SELECT * FROM " + nome_tab + " ;")) {
                        ResultSetMetaData rsmd = rs.getMetaData();
                        int columnsNumber = rsmd.getColumnCount();
                        while (rs.next()) {
                                  /**
                            for (int i = 6; i <= columnsNumber; i++) {
                                System.out.println("ID" + "-" + "MODELLO" + "-" + "MISURA" + "-" + "COLORE" + "-" + "MARCA" + "-" + "SESSO");
                                System.out.println(rs.getString(i) + "-" + rs.getString(i) + "-" + rs.getString(i) + "-" + rs.getString(i) + "-" + rs.getString(i) + "-" + rs.getString(i));
                           
                            }
    
    
                            System.out.println();
    **/
    
    
                            id = rs.getInt("ID");
                            modello = rs.getString("MODELLO");
                            misura = rs.getString("MISURA");
                            colore = rs.getString("COLORE");
                            marca = rs.getString("MARCA");
                            sesso = rs.getString("SESSO");
                            System.out.println("ID = " + id);
                            System.out.println("MODELLO = " + modello);
                            System.out.println("MISURA = " + misura);
                            System.out.println("COLORE = " + colore);
                            System.out.println("MARCA = " + marca);
                            System.out.println("SESSO = " + sesso);
                            System.out.println("");
    
    
                        }
                        menu();
                    }
                }
            } catch (ClassNotFoundException | SQLException e) {
                System.err.println(e.getClass().getName() + ": " + e.getMessage());
                System.exit(0);
            }
            System.out.println("Operation done successfully");
        }
    grazie in anticipo.

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da vurp2013 Visualizza il messaggio
    vorrei sapere se esiste un metodo che riesce a stampare a video i dati all' interno di un database in colonne?
    Di per sé non c'è nulla diretto e immediato per questo. Devi lavorare tu usando appropriatamente i println() ma anche i print(), o comunque componendo tu una unica stringa con i dati del record.
    E se vuoi che siano "ben" incolonnati, devi anche fare un po' di calcoli e operazioni di "padding". Quindi o logiche "a mano" del tipo: una colonna deve essere larga 20 caratteri e il valore in quel record/colonna è in un certo momento di 5 caratteri, allora fai es. un for per fare 15 volte un print(" "). Oppure sfruttando opportunamente la funzionalità di "formattazione" delle stringhe (i printf/format) da Java 5.

    Se ti metti ad usare JDBC, mi aspetterei che hai tutto il background per usare in modo saggio i metodi di I/O (print/println/printf/format) e String/StringBuffer/StringBuilder e i loro metodi.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    11
    grazie mille.. mi sono documentato sul metodo printf e ce l'ho fatta.

    alla prossima!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.