ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • ResultSet 에 대한 객체
    프로그램/JSP 2007. 11. 26. 10:43
    getString(String name)
    getString(int index)
    - return type : String
    - 지정한 필드의 값을 String 으로 읽어온다.

    getCharacterStream(String name)
    getCharacterStream(int index)
    - return type : java.io.Reader
    - 지정한 필드의 값을 스트림 형태로 읽어온다.
    - LONG VARCHAR 타입을 읽어올때 사용한다.

    getLong(String name)
    getLong(int index)
    - return type : int
    - 지정한 필드의 값을 int 타입으로 읽어온다.

    getLong(String name)
    getLong(int index)
    - return type : long
    - 지정한 필드의 값을 long 타입으로 읽어온다

    getDouble(String name)
    getDouble(int index)
    - return type : double
    - 지정한 필드의 값을 double 타입으로 읽어온다.

    getFloat(String name)
    getFloat(int index)
    - return type : float
    - 지정한 필드의 값을 float 타입으로 읽어온다.

    getTimestamp(String name)
    getTimestemp(int index)
    - return type : java.sql.Timestamp
    - 지정한 필드의 값을 Timestamp 타입으로 읽어온다.
       SQL TIMESTAMP타입을 읽어올때 사용된다.

    getDate(String name)
    getDate(int index)
    - return type : java.sql.Date
    - 지정한 필드의 값을 Date 타입으로 읽어온다.
       SQL DATE 타입을 읽어올때 사용된다.

    getTime(String name)
    getTime(int index)
    - return type : java.sql.Time
    - 지정한 필드의 값을 Time 타입으로 읽어온다.
       SQL TIME  타입을 읽어올 때 사용된다.


    ResultSet의 get 계열의 메소드는 현재 커서에서 데이터를 읽어온다.
    ResultSet은 처음에 첫 번째 행 이전에 커서가 위치하기 때문에
    첫번째 행에 저장된 데이터를 읽으려면 다음과 같이 next() 메소드를 사용해서
    커서를 이동시켜야 한다.
    rs = stmt.executeQuery("select * from member");
    if(rs.next()){//다음 행(첫 번째 행)이 존재하면 rs.next()는 true를 리턴
        //rs.next()에 의해서 다음 행(첫번째 행) 으로 이동
        String name = rs.getString("NAME");
        ....
    }else{
        //첫번째 행이 존재하지 않는다. 즉 결과가 없다.
        ....
    }

    여러 개의 행을 처리할 때에는 while 구문이나 do-while 구문을 사용한다.
    먼저 while구문을 사용할 때에는 다음과 같은 형태를 띄게 된다.
    rs = stmt.excuteQuery(...);
    while(rs.next()){
        //한 행씩 반복 처리
        String name = rs.getString(1);
    }


    do-while 구문을 사용할 때에는 다음과 같이 if문을 사용해서
    먼저 데이터가 존재하는지의 여부를 확인후 루프를 반복해야 한다.
    rs = stmt.executeQuery(...);
    if(rs.next()){
        do{
            String name = rs.getString("NAME");
            ....
        }while(rs.next());
    }
Designed by Tistory.