"desc tablename" liefert SQL Exception mit execute

Status
Nicht offen für weitere Antworten.
L

Louis2

Gast
Hallo,

ich führe ein SQL Statement der Art... aus.
Code:
Statement tablefields = main3.connection.createStatement(); 
String resulttablefields = "desc " + resultTable;
ResultSet rs3 = tablefields.executeQuery(resulttablefields);
                        
List fields = new ArrayList(); 
while (rs3.next()) 
{ 
    fields.add(rs3.getString(1));
}

und da kommt eine Exception bei Zeile
Code:
ResultSet rs3 = tablefields.executeQuery(resulttablefields);
, "invalid SQL Statement".

Das ist auch so logisch, da ja "desc" keine Query ist, nun bleibt die Frage wie ich das Statement trotzdem ausführen kann. Mit nur "execute" liefert er mir ob das erste Ergebnis ein Objekt ist ja/nein (boolean) aber das bringt mir ja nicht weiter. Das Statement muss ausgeführt werden und mir Ergebnisse zurückgeben... wie?
 
L

Louis2

Gast
Bleiglanz hat gesagt.:
Das ist auch so logisch, da ja "desc" keine Query ist, nun bleibt die Frage wie ich das Statement trotzdem ausführen kann
wenn das keine Query ist, kannst du sie auch nicht ausführen?

was solln das machen?

Sagen wir mal "desc customer", nun liefert der mir alle Felder (und nur die Felder) die in der Tabelle "customer" drin sind.
Mit "select * from customer" würde er mir ja auch alle Datensätze ausgeben, will ich aber nicht, will nur die Feldernamen.
 
L

Louis2

Gast
Ich habe es anders gelöst:
Code:
SELECT column_name FROM all_tab_columns WHERE table_name='....';
nun ist es wieder eine Query und kann gelesen werden :wink:
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben