ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Oracle - Obecjt
    DB/Oracle 2019. 1. 9. 09:52
    반응형

    Oracle Obecjt 타입은 객체지향에서 사용되는 클래스 개념과 같다.


    구조체의 특성을 그대로 물려받고 함수까지 사용할 수 있다.



     - Object 생성



    단순한 데이터 타입 뿐만 아니라 멤버함수까지 선언할 수 있다.


    함수를 선언하긴 했는데, 이를 실제로 수행하는 로직을 구현해야 한다.


    CREATE OR REPLACE TYPE BODY 구문을 통해 생성할 수 있다.

     - ( 패키지의 BOD와 같은 개념이라고 이해할 수 있다. )



    - Function 구현부






    - dept_typ를 사용하는 테이블을 생성한다.





    * 오라클에서는 Object 타입 선언시 생성자를 굳이 명시하지 않더라도 타입 객체가 생성되면 오라클 내부에 생성자가 저장딘다.

      그리고 생성자 함수의 명칭은 다른 객체지향 언어들에서처럼 클래스 이름, 즉 OBJECT 타입 이름과 동일하다.





    6개의 데이터가 정상적으로 복사 되었다.


    DEPT_TYP가 클래스 형태이므로 DEPT_INFO.DNAME 형태로 접근한다면 데이터를 구체적으로 볼 수 있다.






    Object 타입으로 선언된 컬럼의 데이터를 보기 위해서는 '테이블 별칭.컬럼명.타입항목명' 형태를 사용해야 하고,


     * 반드시  테이블 별칭을 사용해야 한다. 그렇지 않으면 오류가 발생한다.


    멤버함수나 프로시저 역시 테이블 별칭을 이용해서 사용한다.,



    반응형

    댓글

Designed by Tistory.