cubrid_schema

설명

cubrid_schema 함수는 데이터베이스의 원하는 스키마 정보를 얻어온다. 만약 특정 클래스와 관련된 정보를 얻기 위해서는 class_name, 특정 속성과 관련된 정보(현재 CUBRID_SCH_ATTR_PRIVILEGE에서만 사용)를 얻기 위해서는 attr_name을 지정해 주어야 한다.

구문

mixed cubrid_schema (int conn_handle, int schema_type[, string class_name[, string attr_name]])

리턴 값

cubrid_schema의 결과는 2차원 배열형( 열(연관배열) * 행(수치배열) )으로 반환되며, 스키마의 종류와 각 스키마의 종류에 따라 반환되는 결과 배열의 열 구성은 다음과 같다.

스키마

컬럼 번호

컬럼 이름

CUBRID_SCH_CLASS

1 NAME

0 : System class

1 : vclass

2 : class

2

TYPE

 

CUBRID_SCH_VCLASS

1

NAME

1 : vclass

2

TYPE

 

CUBRID_SCH_QUERY_SPEC

1

QUERY_SPEC

 

CUBRID_SCH_ATTRIBUTE

1

ATTR_NAME

 

2

DOMAIN

 

3

SCALE

 

4

PRECISION

 

5

INDEXED

1 : indexed

6

NON NULL

1 : non null

7

SHARED

1 : shared

8

UNIQUE

1 : unique

9

DEFAULT

 

10

ATTR_ORDER

base : 1

11

CLASS_NAME

 

12

SOURCE_CLASS

 
CUBRID_SCH_CLASS_ATTRIBUTE

1

ATTR_NAME

 

2

DOMAIN

 

3

SCALE

 

4

PRECISION

 

5

INDEXED

1 : indexed

6

NON NULL

1 : non null

7

SHARED

1 : shared

8

UNIQUE

1 : unique

9

DEFAULT

 

10

ATTR_ORDER

base : 1

11

CLASS_NAME

 

12

SOURCE_CLASS

 

CUBRID_SCH_METHOD

1

NAME

 

2

RET_DOMAIN

 

3

ARG_DOMAIN

 

CUBRID_SCH_METHOD_FILE

1

METHOD_FILE

 

CUBRID_SCH_SUPERCLASS

1

CLASS_NAME

 

2

TYPE

 

CUBRID_SCH_SUBCLASS

1

CLASS_NAME

 

2

TYPE

 

CUBRID_SCH_CONSTRAINT

1

TYPE

0 : unique

1 : index

2

NAME

 
3

ATTR_NAME

 
CUBRID_SCH_TRIGGER

1

NAME

 

2

STATUS

 

3

EVENT

 

4

TARGET_CLASS

 

5

TARGET_ATTR  

6

ACTION_TIME  

7

ACTION  

8

PRIORITY  

9

CONDITION_TIME

 

10

CONDITION

 
CUBRID_SCH_CLASS_PRIVILEGE

1

CLASS_NAME

 

2

PREVILEGE

 

3

GRANTABLE

 
CUBRID_SCH_ATTR_PRIVILEGE

1

ATT_NAME

 

2

PREVILEGE

 

3

GRANTABLE

 
예제

$attrs = cubrid_schema ($con, CUBRID_SCH_ATTRIBUTE, "person");
while (list($key, $value) = each($attrs)) {
   echo $value["NAME"];
   echo $value["DOMAIN"];
}

관련 항목