Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Query via jdbc con caratteri speciali!!!

    Ciao a tutti,
    ho cercato un po' nel forum e non ho trovato soluzione al mio problema, spero che non ne abbiate già discusso in modo approfondito da qualche parte, nel qual caso mi scuso per la domanda.

    Comunque il mio problema è il seguente:

    Mi devo connettere a Oracle via jdbc, e qui ok, dato poi il nome di una tabella devo recuperare i nomi ( e i tipi ) delle sue colonne. Ho creato quindi questo prepare statement:

    pstmt = conn.prepareStatement("select COLUMN_NAME from USER_TAB_COLUMNS where TABLE_NAME=? order by column_id");

    Come al solito devo passare la stringa del nome della tabella ma oracle vuole 'NOME_TABELLA', tra apici.
    Così invece del semplice

    pstmt.setString(1, ft1.toUpperCase());

    ho provato : pstmt.setString(1, " ' "+ft1.toUpperCase()+" ' ");

    che effettivamente stampa ' NOME_TABELLA' tra apici.

    Ho fatto poi:

    rs = pstmt.executeQuery();

    while(rs.next())
    result[0].add(makeTableBean(rs)); // dove resul è array di 2 vettori


    dopo pstmt.clearParameters(); ho ripetuto il comando con l'altro nome...

    Comunque il problema è che result[0] è null, infatti result[0].size() mi dà NULLPOINTEREXCEPTION!!!!!

    Qualche idea di come risolvere il problema????

    Grazie mille a tutti...

    ciao

    Anna Zanetti

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Potresti provare in questo modo:
    codice:
    ResultSet rs = stmt.executeQuery("SELECT * FROM TuaTabella;");
    ResultSetMetaData rsmd = rs.getMetaData();
    Ora, con il ResultSetMetaData puoi ottenere tutte le informazioni che vuoi sulla tabella e i campi della tabella: nomi, tipi, precisione del tipo...


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Ciao,
    grazie mille della tua risposta..funziona perfettamente.
    scusa del ritardo dei ringraziamenti!!!!...ero super presa dal lavoro!!!

    grazie

    Anna Zanetti

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.