결과를 처리하려면
결과 집합 정보를 검색합니다.
바인딩된 열을 사용하는 경우 바인딩하려는 각 열에 대해 SQLBindCol 을 호출하여 프로그램 버퍼를 열에 바인딩합니다.
결과 집합의 각 행에 대해 다음을 수행합니다.
SQLFetch를 호출하여 다음 행을 가져옵니다.
바인딩된 열을 사용하는 경우 이제 바인딩된 열 버퍼에서 사용할 수 있는 데이터를 사용합니다.
언바운드 열을 사용하는 경우 SQLGetData 를 한 번 이상 호출하여 마지막 바인딩된 열 뒤의 언바운드 열에 대한 데이터를 가져옵니다. 호출은
SQLGetData열 번호의 순서를 늘려야 합니다.여러 번 호출
SQLGetData하여 텍스트 또는 이미지 열에서 데이터를 가져옵니다.
SQLFetch가 SQL_NO_DATA 반환하여 결과 집합의 끝에 신호를 보낼 때 SQLMoreResults를 호출하여 다른 결과 집합을 사용할 수 있는지 확인합니다.
SQL_SUCCESS 반환하는 경우 다른 결과 집합을 사용할 수 있습니다.
SQL_NO_DATA 반환하는 경우 더 이상 결과 집합을 사용할 수 없습니다.
SQL_SUCCESS_WITH_INFO 또는 SQL_ERROR 반환하는 경우 SQLGetDiagRec 를 호출하여 PRINT 또는 RAISERROR 문의 출력을 사용할 수 있는지 확인합니다.
출력 매개 변수 또는 저장 프로시저의 반환 값에 바인딩된 문 매개 변수를 사용하는 경우 이제 바인딩된 매개 변수 버퍼에서 사용할 수 있는 데이터를 사용합니다. 또한 바인딩된 매개 변수를 사용하는 경우 SQLExecute 또는 SQLExecDirect 에 대한 각 호출은 SQL 문 S 시간을 실행합니다. 여기서 S 는 바인딩된 매개 변수 배열의 요소 수입니다. 즉, 처리할 결과의 S 집합이 있습니다. 여기서 각 결과 집합은 SQL 문의 단일 실행에서 일반적으로 반환되는 모든 결과 집합, 출력 매개 변수 및 반환 코드로 구성됩니다.
비고
결과 집합에 컴퓨팅 행이 포함된 경우 각 컴퓨팅 행을 별도의 결과 집합으로 사용할 수 있습니다. 이러한 컴퓨팅 결과 집합은 일반 행 내에 산재되어 있으며 일반 행을 여러 결과 집합으로 분리합니다.
필요에 따라 SQL_UNBIND 사용하여 SQLFreeStmt 를 호출하여 바인딩된 열 버퍼를 해제합니다.
다른 결과 집합을 사용할 수 있는 경우 1단계로 이동합니다.
비고
SQLFetch가 SQL_NO_DATA 반환하기 전에 결과 집합 처리를 취소하려면 SQLCloseCursor를 호출합니다.