Hallo,
ich habe folgendes Problem mit diesem Code:
1.) Wieso wird dort die erste Zeile des SQL Strings underlined?
2.) Wie kann ich z.B. das "?" durch ein in der Konsole eingelesenen String ersetzen?
3.) Ist folgender SQL Querry äquivalent dem, den ich aktuell benutze:
Besten Dank. :applaus:
ich habe folgendes Problem mit diesem Code:
1.) Wieso wird dort die erste Zeile des SQL Strings underlined?
2.) Wie kann ich z.B. das "?" durch ein in der Konsole eingelesenen String ersetzen?
3.) Ist folgender SQL Querry äquivalent dem, den ich aktuell benutze:
Code:
"select agents.aid, agents.aname,sum(dollars)" +
"from orders, agents" +
"where cid=c001 and orders.aid=agents.aid" +
"group by agents.aid,agents.aname";
Code:
import java.sql.*;
public class Blatt4Aufg5 {
public static void main(String[] args) {
String url = "jdbc:oracle:thin:@localhost:1521:ORCL";
String sql = "SELECT ORDERS.PID, ORDERS.AID, Sum(ORDERS.DOLLARS) AS Summe_VK_Produkte
+"FROM ((DBI_ORDERS INNER JOIN DBI_CUSTOMERS ON DBI_ORDERS.CID = DBI_CUSTOMERS.CID) INNER JOIN DBI_PRODUCTS ON DBI_ORDERS.PID = DBI_PRODUCTS.PID) INNER JOIN DBI_AGENTS ON DBI_ORDERS.AID = DBI_AGENTS.AID"
+"GROUP BY DBI_ORDERS.PID, DBI_ORDERS.AID"
+"HAVING (((DBI_ORDERS.PID)=?))"
+"ORDER BY DBI_ORDERS.PID";
Connection con = null;
Statement stmt;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
con = DriverManager.getConnection(url, "dbi", "dbi");
} catch (ClassNotFoundException e) {
} catch (SQLException e1) {
}
try {
stmt = con.createStatement();
ResultSet res = stmt.executeQuery(sql);
while (res.next()) {
String s1 = res.getString(1);
String s2 = res.getString(2);
String s3 = res.getString(3);
int s4 = res.getInt(4);
System.out.println(s1 + "\t" + s2 + "\t" + s3 + "\t" + s4);
}
} catch (SQLException e2) {
}
}
}