기술지원 문의

db table 2개를 읽으려 하는데요 어떻게 ?
정용희 / 2003-07-30 00:00


sql = \"select aa,bb from test\"
rs1 = stmt.executeQuery(sql);
while(rs1.next()) {
   sql = \"select cc from test where aa=\" +   rs1.getString(1);
    rs2 = stmt.executeQuery(sql);     // 이부분이 실행되지 않음
    system.out.println(rs2.getString(1));
    rs2.close();
}
rs1.close();


위와 같이 한개의 레코드를 읽도  그것에 해당하는 레코드를 읽으려고 합니다.


그런데 rs2부분에서 오류가 발생 합니다,.


  rs2 = 이라인부터 rs2.close()까지 빼며는 잘 돌아 갑니다.


2개이상의 table을 연결하여 읽으려면 어떻게 해야 하나요 ?

Re:db table 2개를 읽으려 하는데요 어떻게 ?
김동현 / 2003-08-05 00:00

안녕하세요 정용희님
컴파일 에러는 나지 않을것 같군요. 그러나 정용희님 원하는 값은 얻어오지
못하는 오류가 발생할 것 같군요.
while문 안에 있는 ResultSet객체.next()의 의미는 \"커서를 다음 레코드를 
가리켜라\"라는 뜻입니다. 그러므로 첫번째 레코드중 cc칼럼 의 값을 콘솔에
뿌려주고 싶으시다면 rs2.next(); 를 하셔야 합니다.
그러니까 이 소스에서는
rs2 = stmt.executeQuery(sql);     // 이부분이 실행되지 않음
rs2.next();
system.out.println(rs2.getString(1));


--정용희 님의 글 [2003-07-30 00:39:43]
>


sql = \"select aa,bb from test\"
rs1 = stmt.executeQuery(sql);
while(rs1.next()) {
   sql = \"select cc from test where aa=\" +   rs1.getString(1);
    rs2 = stmt.executeQuery(sql);     // 이부분이 실행되지 않음
    system.out.println(rs2.getString(1));
    rs2.close();
}
rs1.close();


위와 같이 한개의 레코드를 읽도  그것에 해당하는 레코드를 읽으려고 합니다.


그런데 rs2부분에서 오류가 발생 합니다,.


  rs2 = 이라인부터 rs2.close()까지 빼며는 잘 돌아 갑니다.


2개이상의 table을 연결하여 읽으려면 어떻게 해야 하나요 ?