0
DB에서 데이터를 가져 오려고합니다.중첩 된 SELECT 쿼리 Java + MySQL
나는 쿼리에 사용해야합니다. (루프에서) 첫 번째 쿼리에서
나는 일codew
의 코드를 얻고 내가 이름을 얻을 수있는 두 번째 쿼리에서 사용.
여기에 코드가 오류없이 작동합니다.
제 쿼리 행을 인출하지만, 두번째 실행되지 않는다.
int i=0;
c= new Connect().getCon();
try{
java.sql.Statement st = c.createStatement();
String sql= " SELECT distinct(s.codew), title, nberstat, desc_w, dated,datef" +
" FROM work w, employe e, stat s " +
" WHERE w.codew=s.codew " +
" and s.idemploye= e.idemploye " +
" and stat_w=0 " +
" and w.idcreator= 1";
System.out.println(sql);
ResultSet res = (ResultSet) st.executeQuery(sql);
String allW ="";
while (res.next())
{
String codew = res.getString("codew");
String title = res.getString("title");
String desc_w = res.getString("desc_w");
String dated = res.getString("dated");
String date = res.getString("datef");
int nberstat = res.getInt("nberstat"); String strnberstat = Integer.toString(nberstat);
///////////////////////////////////
try
{
java.sql.Statement st2 = c.createStatement();
q="SELECT distinct (name), lname From stat s, employe e WHERE codew LIKE '"+codew+"'";
ResultSet res2 = (ResultSet) st2.executeQuery(q);
while (res2.next())
{
String name = res.getString("name");
String lname = res.getString("lname");
allW = name + " "+lname+", "+allW;
}
}
catch (SQLException s)
{
System.out.println("SQL code does not execute.");
}
/////////////////////////////
........
}
c.close();
}
catch (SQLException s){
System.out.println("SQL code does not execute.");
}
두 번째 쿼리를 콘솔에 표시합니다. SQL code does not execute.
미리 감사드립니다. 감사합니다. Ali
이 쿼리를 사용하여보십시오.''DISTINCT (name), statname의 lname '', '+ codew +' ''또는''SELECT DISTINCT (name)' ' .codew LIKE ' "+ codew +"' ' –
같은 메시지를 출력하고 있기 때문에 어느 캐치가 인쇄되고 있는지 알 수 없습니다. 그리고 예외를 잡아 내고 예외를 인쇄하지 않기 때문에 예외가 무엇인지 잘 알지 못합니다. 지문이 무엇인지 알려주기 위해 지문을 변경하고 문제가 무엇인지 알려주는's.getMessage()'를 추가합니다. –