Veröffentlicht 7. Januar 200817 j Hallo habe ein Java Programm welches auf eine Oracle Datenbank zugreifen soll. Wenn ich nur auf eine Tabelle zugreife funktioniert das soweit, jedoch bekomme ich Probleme bei zwei oder mehreren Tabellen. Habe folgendes einfach mal ausprobiert: query = "SELECT selektion.kndnr xkundenadresse.vorname1 xkundenadresse.nachname1 xkundenadreses.dataupd FROM selektion xkundenadresse WHERE selektion.werbecode = 221000 AND selektion.kndnr = xkundenadresse.kndnr"; // Zugriff auf die Oracle-Datenbank try { OracleDataSource ods = new OracleDataSource(); ods.setURL(properties.getProperty("connectionUrl")); Connection con = ods.getConnection(); stmt = con.createStatement(); System.out.println("**5: "+query); rs = stmt.executeQuery(query); System.out.println("**6"); int counter = 0; while(rs.next() && counter < 1000) { counter++; System.out.println(counter + ": " + (String)(rs.getString(1))+" - "+(String)(rs.getString(2))+" - "+(String)(rs.getString(3))); } stmt.close(); con.close(); } catch (SQLException ex) { pb.setString("("+ ex.getErrorCode() + ") SQL-Query fehlgeschlagen"); } das einzige was mir die Console ausgibt ist: **5: SELECT selektion.kndnr xkundenadresse.vorname1 xkundenadresse.nachname1 xkundenadreses.dataupd FROM selektion xkundenadresse WHERE selektion.werbecode = 221000 AND selektion.kndnr = xkundenadresse.kndnr aber keine Daten (es sind 10 Sätze in der Tabelle selektion, und die eingetragenen Kundennummern sind alle in der Tabelle (bzw. View) xkundenadresse.)
7. Januar 200817 j wie wäre es mit einem komma zwischen den einzelnen feldern im select? query = "SELECT selektion.kndnr, xkundenadresse.vorname1, xkundenadresse.nachname1, xkundenadreses.dataupd FROM selektion xkundenadresse WHERE selektion.werbecode = 221000 AND selektion.kndnr = xkundenadresse.kndnr";
7. Januar 200817 j Hi, Dein SQL kommt mir irgendwie komisch vor (mal von den schon erwähnten syntaktischen Fehlern): SELECT selektion.kndnr, xkundenadresse.vorname1, xkundenadresse.nachname1, xkundenadreses.dataupd FROM selektion xkundenadresse WHERE selektion.werbecode = 221000 AND selektion.kndnr = xkundenadresse.kndnr Warum verwendest Du mal einen Tabellenalias mal nichtFalls es sich bei xkundenadresse nicht um einen Alias handelt, dann fehlt ein , dazwischen, ansonsten ist das kein JOIN aber trotzdem syntaktisch korrekt. Dim
8. Januar 200817 j Bin was SQL angeht noch sehr unerfahren... xkundenadresse ist eine eigene Tabelle (das Komma habe ich mit den anderen zwischen den beiden Tabellen eingefügt) aber ich hätte noch eine Frage bei der du mir vielleicht helfen könntest. eigentlich brauche ich eine SQL abfrage eine 3 Tabelle (XKundentitel) in dieser Tabelle gibt es zu jedem Satz von der Xkundenadresse mehrere einträge (jedoch maximal 9 Stück). Ich hätte gerne das im ResultSet die kompletten Daten für den Kunden in einem Satz stehen.
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.