조인 또는 통합을 작성하거나 계산 결과 컬럼을 포함하는
SQL 쿼리에 AS절을 사용하지 않는 경우, 쿼리 결과는 이름이 고유하지 않거나
이름이 없는 컬럼을 포함할 수 있습니다. pureQuery는 쿼리 결과를 포함하려는 Bean의 등록 정보에
이러한 컬럼을 맵핑할 수 없습니다. 특정 set() 메소드를 사용하여 해당 컬럼을 수동으로 맵핑할 수 있습니다.
이 set() 메소드는 최소한 다음 두 상황에서
유용합니다.
이러한 경우를 처리하기 위해 리턴된 쿼리 결과의 데이터로 채워진
Bean에서 다음 메소드를 구현할 수 있습니다.
public void set (String colName, String tableName, int columnIndex, Object setVal)
{
. . .
}
- colName
- 값이 리턴된 원본 컬럼의 이름. 이 값은
널(NULL) 또는 빈 문자열("")일 수 있습니다.
- tableName
- 컬럼을 포함하는 테이블의 이름. 이 값은
널(NULL) 또는 빈 문자열("")일 수 있습니다.
- columnIndex
- 쿼리 결과 내에서 컬럼의 위치를 표시하는
정수. 인덱스는 1에서 시작합니다.
주의: columnIndex의 값을
제공하지 않는 옵션이 있습니다. SQL 쿼리의 변경사항은 컬럼에 대해 리턴되는 columnIndex를
변경할 수 있습니다. 또한 columnIndex 사용은
set() 메소드를 특정 쿼리에 제한하여
다른 쿼리에 대해서는 메소드를 쓸모없게 만듭니다. 대부분의 경우, tableName 및 colName이면
값을 설정할 등록 정보를 식별하는 데 충분합니다.
- setVal
- 컬럼의 값.