SQL SELECT문의 결과 세트를 가진 Bean 생성

명령문이 리턴하는 결과 세트를 가진 Bean을 생성할 수 있습니다. Java 클래스가 pureQuery를 지원하는 Java 프로젝트에 나타나는 동안에는 올바른 SQL SELECT문을 포함하는 Java 클래스의 모든 문자열 리터럴에 있는 SQL SELECT문을 사용할 수 있습니다.

프로시저

SELECT문의 결과 세트를 가질 Bean을 생성하려면 다음을 수행하십시오.

  1. Java 편집기에서 명령문 내에 텍스트 커서를 놓은 후 명령문을 마우스 오른쪽 단추로 클릭하고 데이터 액세스 개발 > pureQuery 코드 생성을 선택하십시오. SQL문에서 pureQuery 코드 생성 마법사가 열립니다.
  2. 마법사의 단계를 완료하십시오.
  3. Bean을 생성하려면 완료를 클릭하십시오.

결과

조인 또는 통합을 야기하거나 계산된 열을 포함하는 SQL 쿼리에서 AS절을 사용하지 않는 경우, 결과 세트에는 고유하지 않은 이름을 가진 열이 포함될 수 있습니다. 결과 세트를 나타내도록 Bean을 생성할 때 워크벤치가 이 문제점을 해결할 수 있는지는 애플리케이션이 사용하는 데이터베이스 유형에 따라 결정됩니다.
  • Linux, UNIX 및 Windows용 DB2®, z/OS®용 DB2, Informix® Dynamic Server: 워크벤치는 하나 이상의 다른 열과 같은 이름을 가지고 있는 열에 맵핑하는 특성의 @Column 어노테이션을 사용합니다.
    예를 들어, 애플리케이션이 다음 단순 쿼리를 실행한다고 가정하십시오.
    	select a.col1, b.col1 from a, b where a.id=b.id;
    쿼리 결과를 보유한 Bean의 해당 특성에 대한 set() 메소드에는 두 개의 id 열이 나타나는 테이블의 이름을 제공하는 @Column 어노테이션이 필요합니다.
    public class JoinExample{
    
      private int a_id;
      private int b_id;
    
      @Column (name="id", table="a")
      public void setA_id (int a_id)
      {
        this.a_id = a_id;
      }
      public int getA_id ()
      {
        return a_id;
      }
    
      @Column (name="id", table="b")
      public void setB_id (int b_id)
      {
        this.b_id = b_id;
      }
      public int getB_id ()
      {
        return b_id;
      }
    }
  • Oracle: 워크벤치는 문제가 있는 열을 Bean의 특성에 맵핑하기 위해 @Column 어노테이션의 table 속성을 사용하지 않습니다. 다음 방법 중 하나를 사용하여 해당 열을 맵핑해야 합니다.
    • SELECT문의 AS절을 사용하여 쿼리 결과의 열에 고유 이름을 지정하십시오.
    • 이름이 아니고 색인 번호를 기준으로 하여 쿼리 결과의 열에 대한 작업을 수행할 수 있는 RowHandler를 사용하십시오. RowHandler <ROW> 인터페이스를 참조하십시오.

피드백