이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
당신은 다음과 같은 페이지를 보고 싶을 수도 있습니다.현재버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

31.3. 스포츠 토토 실행 및 결과 처리

발행을 원할 때마다SQL데이터베이스에 대한 명령문을 작성하려면 다음이 필요합니다.성명또는PreparedStatement인스턴스. 일단 당신은성명또는준비된 진술, 쿼리를 발행할 수 있습니다. 그러면 다음이 반환됩니다.결과세트6745_6798섹션 31.3.1여기 이 동작을 변경하는 방법에 대해 알아보세요).예 31-1설명합니다 이 과정.

예 31-1. 간단한 쿼리 처리JDBC

이 예는 간단한 쿼리를 실행하고 다음을 인쇄합니다. a를 사용하는 각 행의 첫 번째 열성명서.

문 st = db.createStatement();
ResultSet rs = st.executeQuery("SELECT * FROM mytable WHERE 컬럼foo = 500");
동안(rs.next()) 
    System.out.print("열 1이 반환되었습니다. ");
    System.out.println(rs.getString(1));

이 예는 이전과 동일한 쿼리를 실행하지만 다음을 사용합니다.PreparedStatement그리고 바인드 스포츠 토토의 값입니다.

int foovalue = 500;
ReadyStatement st = db.prepareStatement("SELECT * FROM mytable WHERE 컬럼foo = ?");
st.setInt(1, foovalue);
ResultSet rs = st.executeQuery();
동안(rs.next()) 
    System.out.print("열 1이 반환되었습니다. ");
    System.out.println(rs.getString(1));

31.3.1. 을 기반으로 결과 얻기 커서

기본적으로 드라이버는 쿼리에 대한 모든 결과를 수집합니다. 즉시. 이는 대규모 데이터 세트의 경우 불편할 수 있으므로 JDBC 드라이버는 다음을 기반으로 하는 수단을 제공합니다.ResultSet데이터베이스 커서에서만 적은 수의 행을 가져오는 중입니다.

소수의 행이 클라이언트측에 캐시되어 있습니다. 연결되고 소진되면 다음 행 블록이 커서 위치를 변경하여 검색합니다.

예 31-2. 전환할 가져오기 크기 설정 커서를 켜고 끕니다.

코드를 커서 모드로 변경하는 것은 의 크기를 가져옵니다.성명에 적절한 크기. 가져오기 크기를 다시 0으로 설정하면 모든 행이 캐시되도록 합니다(기본 동작).

문 st = db.createStatement();
// 커서 사용을 켭니다.
st.setFetchSize(50);
ResultSet rs = st.executeQuery("SELECT * FROM mytable");
동안(rs.next()) 
   System.out.print("행이 반환되었습니다.");

31.3.2. 를 사용하여성명서또는준비된 진술인터페이스

다음을 사용할 때 다음 사항을 고려해야 합니다.성명또는PreparedStatement인터페이스:

  • 단일을 사용할 수 있습니다.성명인스턴스 횟수만큼 원한다. 앱을 열자마자 만들 수 있습니다. 연결하고 연결 수명 동안 이를 사용합니다. 하지만 그거 하나만 기억하면 돼.결과세트존재 가능성명또는PreparedStatement특정 시간에.

  • 다음을 처리하는 동안 쿼리를 수행해야 하는 경우결과세트, 간단하게 할 수 있습니다 다른 생성 및 사용성명.

  • 당신이 스레드를 사용하고 있고 여러 사람이 스레드를 사용하고 있다면 데이터베이스인 경우 별도의 데이터베이스를 사용해야 합니다.성명각 스레드에 대해. 참조토토 사이트 추천 : 문서 : 7.4 : 멀티 스레드 또는 서블릿 환경에서 드라이버 사용당신이 그렇다면 스레드를 사용할 생각은 몇 가지 중요한 사항을 다루기 때문입니다. 포인트.

  • 사용을 마치면성명서또는PreparedStatement문을 닫아야 합니다 그것.

31.3.3. 를 사용하여결과세트인터페이스

다음을 사용할 때 다음 사항을 고려해야 합니다.결과세트인터페이스:

  • 값을 읽기 전에 호출해야 합니다.다음(). 다음이 있는 경우 true를 반환합니다. 하지만 더 중요한 것은 행을 준비한다는 것입니다. 처리 중입니다.

  • 아래JDBC사양에서는 필드에 한 번만 액세스해야 합니다. 그것은 이 규칙을 따르는 것이 가장 안전하지만 현재로서는PostgreSQL운전자가 할 것이다 원하는 만큼 필드에 액세스할 수 있습니다.

  • 다음을 닫아야 합니다.결과세트전화로닫기()사용을 마치면 그것.

  • 다음으로 다른 쿼리를 작성하면성명만드는 데 사용됨결과세트현재 열려 있는 곳결과세트인스턴스가 닫혔습니다. 자동으로.