DBMS_CATALOG 요약

이 섹션에서는 Oracle Autonomous AI Database와 함께 제공되는 DBMS_CATALOG 서브프로그램을 다룹니다.

서브 프로그램은 다음과 같은 기능 영역으로 분류됩니다.

카탈로그 마운팅 및 마운트 해제

하위 프로그램 설명

MOUNT_DATA_CATALOG 프로시저

이 프로시저는 AWS GLUE 또는 OCI 데이터 카탈로그와 같은 데이터 카탈로그를 마운트합니다.

MOUNT_DB_LINK 프로시저

이 프로시저는 데이터베이스 링크를 기반으로 카탈로그를 마운트합니다.

MOUNT_ICEBERG 프로시저

이 절차에서는 특정 구성으로 Apache Iceberg 카탈로그를 마운트합니다.

MOUNT_SHARE 프로시저

이 절차에서는 공유를 기반으로 단일 카탈로그를 마운트합니다.

MOUNT_SHARES 프로시저

이 절차에서는 서로 다른 입력 유형을 지원하기 위해 오버로드가 있는 공유 공급자의 여러 카탈로그를 마운트합니다.

MOUNT_VIRTUAL_CATALOG 프로시저

이 절차에서는 새 가상 카탈로그를 만들고 마운트합니다.

UNMOUNT 프로시저

이 절차에서는 기존 외부 카탈로그를 마운트 해제합니다.

카탈로그 속성 관리

하위 프로그램 설명

GET_CATALOG_PROPERTY 프로시저

GET_CATALOG_PROPERTY_CLOB 프로시저

이러한 프로시저는 카탈로그에 대한 속성 값을 검색합니다.

UPDATE_CATALOG_PROPERTY 프로시저

UPDATE_CATALOG_PROPERTY_CLOB 프로시저

이러한 프로시저는 카탈로그에 대한 속성 값을 갱신합니다.

GET_COLUMN_PROPERTY 함수

GET_COLUMN_PROPERTY_CLOB 함수

이러한 함수는 VARCHAR2 또는 CLOB 형식의 특정 열에 대한 속성 값을 검색합니다.

UPDATE_COLUMN_PROPERTY 프로시저

UPDATE_COLUMN_PROPERTY_CLOB 프로시저

이러한 절차에서는 특정 열에 대한 등록 정보 값을 소스에 대한 업데이트를 푸시하는 옵션과 함께 업데이트합니다.

GET_SCHEMA_PROPERTY 프로시저

GET_SCHEMA_PROPERTY_CLOB 프로시저

이러한 프로시저는 스키마 속성 값을 검색합니다.

UPDATE_SCHEMA_PROPERTY 프로시저

UPDATE_SCHEMA_PROPERTY_CLOB 프로시저

이러한 프로시저는 스키마 등록 정보 값을 업데이트합니다.

GET_TABLE_PROPERTY 프로시저

GET_TABLE_PROPERTY_CLOB 프로시저

이러한 프로시저는 테이블 속성 값을 검색합니다.

UPDATE_TABLE_PROPERTY 프로시저

UPDATE_TABLE_PROPERTY_CLOB 프로시저

이러한 프로시저는 테이블 속성 값을 갱신합니다.

GET_CLOUD_STORAGE_LINK_PROPERTY 함수

GET_CLOUD_STORAGE_LINK_PROPERTY_CLOB 함수

이러한 함수는 VARCHAR2 또는 CLOB 형식으로 클라우드 저장 영역 링크에 대한 속성 값을 검색합니다.

UPDATE_CLOUD_STORAGE_LINK_PROPERTY 프로시저

UPDATE_CLOUD_STORAGE_LINK_PROPERTY_CLOB 프로시저

다음 절차에서는 클라우드 스토리지 링크에 대한 등록 정보 값을 업데이트합니다.

인증서 관리

하위 프로그램 설명

ADD_REQUIRED_CREDENTIAL 프로시저

이 절차에서는 카탈로그에 필요한 인증서를 정의합니다.

REMOVE_REQUIRED_CREDENTIAL 프로시저

이 절차에서는 카탈로그에서 필수 자격 증명을 제거합니다.

RENAME_REQUIRED_CREDENTIAL 프로시저

이 절차에서는 필요한 인증서의 이름을 바꿉니다.

GET_REQUIRED_CREDENTIAL_PROPERTY 프로시저

이 절차에서는 필수 자격 증명의 등록 정보를 검색합니다.

UPDATE_REQUIRED_CREDENTIAL_PROPERTY 프로시저

이 절차에서는 필수 자격 증명의 등록 정보를 업데이트합니다.

GET_LOCAL_CREDENTIAL_MAP (오버로드된) 프로시저

이 절차에서는 다양한 출력 형식에 대한 오버로드를 통해 필요한 자격 증명과 로컬 자격 증명 간의 매핑을 검색합니다.

SET_LOCAL_CREDENTIAL 프로시저

이 절차에서는 필수 자격 증명에 대한 로컬 자격 증명을 지정합니다.

카탈로그 엔티티 관리

하위 프로그램 설명

CREATE_CLOUD_STORAGE_LINK 프로시저

DROP_CLOUD_STORAGE_LINK 프로시저

이 절차에서는 카탈로그의 클라우드 스토리지 링크를 관리합니다.

GET_CLOUD_STORAGE_LINKS 함수

이 기능은 선택적 필터가 있는 카탈로그의 클라우드 스토리지 링크에 대한 메타데이터를 검색합니다.

CREATE_EXTERNAL_TABLE 프로시저

이 프로시저는 카탈로그에 External Table을 생성합니다.

CREATE_SCHEMA 프로시저

이 절차에서는 카탈로그에 새 스키마를 생성하고 원격 카탈로그에 Apache Iceberg 스키마를 생성합니다.

GET_OBJECTS 프로시저

GET_SCHEMAS 프로시저

GET_TABLES 프로시저

이 프로시저는 파이프라인 함수를 사용하여 카탈로그에 있는 테이블, 스키마 및 객체에 대한 메타 데이터를 검색합니다.

DROP_SCHEMA 프로시저

DROP_TABLE 프로시저

이 프로시저는 카탈로그에서 스키마 및 테이블을 삭제합니다.

GET_COLUMNS 함수

이 함수는 카탈로그에 있는 테이블 또는 뷰의 열에 대한 메타 데이터를 검색합니다.

GET_TABLE 프로시저

GET_TABLE 함수

이 프로시저 및 함수는 레코드 또는 JSON 형식의 특정 테이블에 대한 자세한 정보를 검색합니다.

데이터 액세스 및 캐싱

하위 프로그램 설명

GENERATE_TABLE_SELECT(오버로드된) 프로시저

이 프로시저는 프로시저와 함수에 대한 오버로드가 있는 논리적 테이블에 대한 SELECT 문을 생성합니다.

OPEN_TABLE_CURSOR 프로시저

이 프로시저는 커서를 열어 논리적 테이블의 데이터를 반환합니다.

FLUSH_CATALOG_CACHE 프로시저

PREFILL_CATALOG_CACHE 프로시저

이 프로시저는 카탈로그 메타 데이터 캐싱을 관리합니다.

동기화 및 공유

하위 프로그램 설명

CREATE_SYNCHRONIZED_SCHEMAS 프로시저

DROP_SYNCHRONIZED_SCHEMAS 프로시저

이러한 프로시저는 원격 카탈로그 정의와 동기화된 스키마를 관리합니다.

UPDATE_SYNCHRONIZED_SCHEMA_PROPERTY 프로시저

이 절차에서는 동기화된 스키마의 등록 정보를 업데이트합니다.

SYNCHRONIZE_SHARED_CATALOGS 프로시저

이 절차에서는 마운트 해제 또는 사용 안함으로 설정하는 옵션과 함께 사용할 수 없는 공유에 해당하는 카탈로그를 관리합니다.

CREATE_SYNCHRONIZED_VIEWS 프로시저

이 프로시저는 제한 사항을 적용하기 위해 카탈로그 테이블에 뷰를 생성합니다.

COPY_TABLE_PROPERTIES 프로시저

이 절차에서는 선택적 열 등록 정보를 포함하여 한 테이블에서 다른 테이블로 등록 정보를 복사합니다.

GRANT_TO_RECIPIENT 프로시저

REVOKE_FROM_RECIPIENT 프로시저

이러한 절차에서는 카탈로그 수신자에 대한 액세스 권한을 관리합니다.

이벤트 로깅

하위 프로그램 설명

CLEAR_CATALOG_EVENTS 프로시저

이 절차에서는 시간범위 내에 있는 카탈로그 이벤트 로그에서 이벤트를 지웁니다.

Iceberg 관련 관리

하위 프로그램 설명

CREATE_ICEBERG_TABLE 프로시저

이 절차에서는 카탈로그의 지정된 스키마 내에 새 Iceberg 테이블을 만듭니다.

ADD_ICEBERG_SNAPSHOT 프로시저

이 절차에서는 Iceberg 테이블에 스냅샷을 추가하여 세부 메타데이터로 데이터 변경사항을 나타냅니다.

MOUNT_DATA_CATALOG 프로시저

이 프로시저는 데이터 카탈로그(예: AWS GLUE 또는 OCI 데이터 카탈로그)를 마운트합니다.

구문

PROCEDURE mount_data_catalog
(
  catalog_name 				IN VARCHAR2,
  data_catalog_type 		IN VARCHAR2,
  data_catalog_region 		IN VARCHAR2,
  data_catalog_credential 	IN VARCHAR2,
  data_catalog_id 			IN VARCHAR2 := NULL,
  data_storage_credential 	IN VARCHAR2 := NULL,
  enabled 					IN BOOLEAN := TRUE
);

매개변수

매개변수 설명

catalog_name

새 카탈로그의 이름입니다. 대문자로 변환됩니다.

data_catalog_type

데이터 카탈로그의 유형입니다(예: OCI_DCAT 또는 AWS_GLUE).

data_catalog_region

데이터 카탈로그의 클라우드 리소스 영역입니다.

data_catalog_credential

데이터 카탈로그 액세스에 사용되는 로컬 인증서입니다.

data_catalog_id

데이터 카탈로그 이름 또는 식별자입니다. 기본값은 NULL입니다.

data_storage_credential

데이터 액세스를 위한 로컬 인증서를 지정합니다. 기본값은 NULL입니다. 이 필드는 선택사항입니다.

enabled

카탈로그가 검색에 대해 사용으로 설정되었는지 여부를 나타냅니다. 기본값은 TRUE입니다.

/****************** Glue Catalog ******************/
BEGIN
  -- Create a credential capable of accessing a glue catalog
  dbms_cloud.create_credential('GLUE_CATALOG_CREDENTIAL', ...); 

  -- Mount a glue catalog
  dbms_catalog.mount_data_catalog(
    catalog_name             => 'GLUE_CAT',
    data_catalog_type        => 'AWS_GLUE',
    data_catalog_region      => 'us-east-1', 
    data_catalog_credential  => 'GLUE_CATALOG_CREDENTIAL');
END;
/

MOUNT_DB_LINK 프로시저

이 프로시저는 데이터베이스 링크를 기반으로 External Catalog를 마운트합니다.

구문

PROCEDURE mount_db_link
(
  catalog_name 	IN VARCHAR2,
  db_link 		IN VARCHAR2,
  enabled 		IN BOOLEAN := TRUE
);

매개변수

매개변수 설명

catalog_name

새 카탈로그의 이름입니다. 대문자로 변환됩니다.

db_link

카탈로그 마운트에 사용할 데이터베이스 링크입니다.

enabled

카탈로그가 검색에 대해 사용으로 설정되었는지 여부를 나타냅니다. 기본값은 TRUE입니다.

MOUNT_ICEBERG 프로시저

이 절차는 Iceberg 카탈로그를 마운트합니다.

구문

Iceberg 카탈로그에 대한 자세한 내용은 Iceberg REST 카탈로그 사양을 참조하십시오.

PROCEDURE mount_iceberg
(
  catalog_name 				IN VARCHAR2,
  endpoint 					IN VARCHAR2,
  catalog_credential 		IN VARCHAR2,
  data_storage_credential 	IN VARCHAR2,
  configuration 			IN SYS.JSON_OBJECT_T := NULL,
  enabled 					IN BOOLEAN := TRUE,
  catalog_type 				IN VARCHAR2 := 'ICEBERG_GENERIC'
);

매개변수

매개변수 설명

catalog_name

새 카탈로그의 이름입니다. 대문자로 변환됩니다.

endpoint

Iceberg 기본 서버 URL입니다.

catalog_credential

Iceberg 카탈로그에 액세스하는 데 사용되는 인증서입니다.

data_storage_credential

데이터 액세스에 사용되는 인증서입니다.

configuration

카탈로그 구성을 JSON 객체로 설명합니다.

지원되는 구성은 다음과 같습니다.
  • namespacePath: 기본값은 NULL입니다.
  • namespaceSeparator: Unity의 경우 점(.)으로, 다른 Iceberg 카탈로그의 경우 %1F로 기본 설정됩니다.
  • isCaseSensitive: Unity의 경우 기본값은 FALSE, 다른 Iceberg 카탈로그의 경우 TRUE)
  • isPublicCatalog: 기본값은 FALSE입니다.
  • bucketRegion: 기본값은 NULL입니다. 카탈로그에서 S3 스토리지를 사용하는 경우에만 관련이 있습니다.
enabled

카탈로그가 검색에 대해 사용으로 설정되었는지 여부를 나타냅니다. 기본값은 TRUE입니다.

catalog_type

빙산 카탈로그의 유형입니다(예: ICEBERG_GENERIC, ICEBERG_POLARIS, ICEBERG_UNITY). 기본값은 ICEBERG_GENERIC입니다.

/****************** Iceberg Catalog - Unity ******************/
DECLARE
  config      JSON_OBJECT_T := JSON_OBJECT_T();
BEGIN
  -- Create a credential capable of accessing an external iceberg REST catalog
  dbms_share.create_bearer_token_credential(
    credential_name => 'ICEBERG_CATALOG_CREDENTIAL',
    token_endpoint => 'https://.../v1/tokens',
    client_id => ...,
    client_secret => ...,
    token_scope => 'all-apis');

  -- Create a credential capable of accessing the bucket where the 
  -- iceberg data files are stored.
  dbms_cloud.create_credential('ICEBERG_STORAGE_CRED', ...); 

  -- Mount a iceberg catalog
  config.put('namespacePath', 'sales_catalog');
  dbms_catalog.mount_iceberg(
    catalog_name             => 'ICEBERG_CAT',
    endpoint                 => 'https://...//api/2.1/unity-catalog/iceberg/v1',
    catalog_credential       => 'ICEBERG_CATALOG_CREDENTIAL',
    data_storage_credential  => 'ICEBERG_STORAGE_CRED',
    configuration            => config,
    catalog_type             => 'ICEBERG_UNITY');
END;
/

/****************** Iceberg Catalog - Polaris ******************/
DECLARE
  config      JSON_OBJECT_T := JSON_OBJECT_T();
BEGIN
  -- Create a credential capable of accessing an external iceberg REST catalog
  dbms_share.create_bearer_token_credential(
    credential_name => 'ICEBERG_CATALOG_CREDENTIAL',
    token_endpoint => 'https://.../v1/oauth/tokens',
    client_id => ...,
    client_secret => ...,
    token_scope => 'PRINCIPAL_ROLE:ALL');

  -- Create a credential capable of accessing the bucket where the 
  -- iceberg data files are stored.
  dbms_cloud.create_credential('ICEBERG_STORAGE_CRED', ...); 

  -- Mount a iceberg catalog
  config.put('namespacePath', 'sales_catalog');
  dbms_catalog.mount_iceberg(
    catalog_name             => 'ICEBERG_CAT',
    endpoint                 => 'https://.../polaris/api/catalog/v1',
    catalog_credential       => 'ICEBERG_CATALOG_CREDENTIAL',
    data_storage_credential  => 'ICEBERG_STORAGE_CRED',
    configuration            => config,
    catalog_type             => 'ICEBERG_POLARIS');
END;
/

MOUNT_SHARE 프로시저

이 절차에서는 단일 공유를 기반으로 카탈로그를 마운트합니다.

구문

PROCEDURE mount_share
(
  catalog_name 				IN VARCHAR2,
  share_provider 			IN VARCHAR2,
  share_name 				IN VARCHAR2,
  share_provider_owner 		IN VARCHAR2 := NULL,
  enabled 					IN BOOLEAN := TRUE
);

매개변수

매개변수 설명

catalog_name

새 카탈로그의 이름입니다. 대문자로 변환됩니다.

share_provider

공유 제공자의 이름입니다.

share_name

마운트할 공유의 이름입니다.

share_provider_owner

공유 제공자의 소유자입니다. NULL인 경우 현재 카탈로그로 기본 설정됩니다.

enabled

카탈로그가 검색에 대해 사용으로 설정되었는지 여부를 나타냅니다. 기본값은 TRUE입니다.

/****************** Share Catalog ******************/
BEGIN
  -- Create a share provider
  dbms_share.create_or_replace_share_provider(
    provider_name        => 'MY_SHARE_PROVIDER',
    endpoint             => 'https://...');
  dbms_cloud.create_credential(
    credential_name      => 'SHARE_PROVIDER_CREDENTIAL', ...);
  dbms_share.set_share_provider_credential(
    provider_name        => 'MY_SHARE_PROVIDER',
    share_credential     => 'SHARE_PROVIDER_CREDENTIAL');

  -- Mount a share catalog
  dbms_catalog.mount_share(
    catalog_name         => 'SHARE_CAT',
    share_provider       => 'MY_SHARE_PROVIDER',
    share_name           => 'MY_SHARE_1');
END;
/

MOUNT_SHARES 프로시저

이 절차에서는 공유 공급자의 공유를 기반으로 여러 카탈로그를 마운트합니다.

구문

PROCEDURE mount_shares
(
  share_provider 		IN VARCHAR2,
  shares 				IN SYS.JSON_ARRAY_T,
  created_catalogs 		IN OUT NOCOPY SYS.JSON_ARRAY_T,
  share_provider_owner 	IN VARCHAR2 := NULL
);

매개변수

매개변수 설명

share_provider:

공유 제공자의 이름입니다.

shares

마운트할 공유 목록을 정의하는 JSON 배열입니다. 각 요소는 shareName, required, shareNameRule, catalogName, skipExisting, placeholderenabled와 같은 속성을 지정합니다.

created_catalogs

새로 생성된 카탈로그의 JSON 배열로, shareNamecatalogName과 같은 속성을 가진 출력으로 반환됩니다.

share_provider_owner

공유 제공자의 소유자입니다. NULL인 경우 현재 카탈로그로 기본 설정됩니다.

두번째 프로시저 구문

PROCEDURE mount_shares
(
  share_provider 		IN VARCHAR2,
  shares 				IN SYS.JSON_ARRAY_T,
  share_provider_owner 	IN VARCHAR2 := NULL
);

세번째 프로시저 구문

PROCEDURE mount_shares
(
  share_provider 		IN VARCHAR2,
  shares 				IN CLOB := '[{shareName:"%"}]',
  share_provider_owner 	IN VARCHAR2 := NULL
);

두번째 프로시저의 파라미터

매개변수는 created_catalogs가 없는 경우를 제외하고 프로시저 1과 동일합니다.

세번째 프로시저의 파라미터

공유는 모든 공유를 포함하는 기본값이 있는 CLOB이라는 점을 제외하면 매개변수는 서명 1과 동일합니다.

/****************** Share Catalog ******************/
BEGIN
  -- Create a share provider
  dbms_share.create_or_replace_share_provider(
    provider_name        => 'MY_SHARE_PROVIDER',
    endpoint             => 'https://...');
  dbms_cloud.create_credential(
    credential_name      => 'SHARE_PROVIDER_CREDENTIAL', ...);
  dbms_share.set_share_provider_credential(
    provider_name        => 'MY_SHARE_PROVIDER',
    share_credential     => 'SHARE_PROVIDER_CREDENTIAL');

  -- Mount shares as catalogs
  dbms_catalog.mount_shares(
    share_provider       => 'MY_SHARE_PROVIDER');
END;
/

MOUNT_VIRTUAL_CATALOG 프로시저

이 절차에서는 새 가상 카탈로그를 만들고 마운트합니다.

구문

PROCEDURE mount_virtual_catalog
(
  catalog_name 	IN VARCHAR2,
  enabled 		IN BOOLEAN := TRUE
);

매개변수

매개변수 설명

catalog_name

새 카탈로그의 이름입니다. 대문자로 변환됩니다.

enabled

카탈로그가 검색에 대해 사용으로 설정되었는지 여부를 나타냅니다. 기본값은 TRUE입니다.

UNMOUNT 프로시저

이 절차에서는 외부 카탈로그를 마운트 해제합니다.

구문

PROCEDURE unmount
(
  catalog_name IN VARCHAR2
);

매개변수

매개변수 설명

catalog_name

마운트 해제할 기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

GET_CATALOG_PROPERTY 프로시저

이 절차에서는 카탈로그에 대한 등록 정보 값을 반환합니다.

구문

FUNCTION get_catalog_property
(
  catalog_name 		IN VARCHAR2,
  catalog_property 	IN VARCHAR2
)
RETURN VARCHAR2;

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

catalog_property

검색할 등록 정보에 대해 설명합니다(예: PROP_CACHE_DURATION, PROP_IS_ENABLED).

값은 다음 상수 중 하나일 수 있습니다.
  • PROP_CACHE_ASYNC
  • PROP_CACHE_DURATION
  • PROP_CACHE_ENABLED
  • PROP_CONFIGURATION
  • PROP_CUSTOM
  • PROP_DCAT_TYPE
  • PROP_DEFAULT_SCHEMA
  • PROP_IS_ENABLED
  • PROP_METADATA

자세한 내용은 카탈로그 유형 및 상수를 참조하십시오.

GET_CATALOG_PROPERTY_CLOB 프로시저

이 프로시저는 CLOB 형식으로 카탈로그에 대한 속성 값을 반환합니다.

구문

FUNCTION get_catalog_property_clob
(
  catalog_name 		IN VARCHAR2,
  catalog_property 	IN VARCHAR2
)
RETURN CLOB;

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

catalog_property

검색할 등록 정보에 대해 설명합니다(예: PROP_CACHE_DURATION, PROP_IS_ENABLED).

값은 다음 상수 중 하나일 수 있습니다.
  • PROP_CACHE_ASYNC
  • PROP_CACHE_DURATION
  • PROP_CACHE_ENABLED
  • PROP_CONFIGURATION
  • PROP_CUSTOM
  • PROP_DCAT_TYPE
  • PROP_DEFAULT_SCHEMA
  • PROP_IS_ENABLED
  • PROP_METADATA

자세한 내용은 카탈로그 유형 및 상수를 참조하십시오.

UPDATE_CATALOG_PROPERTY 프로시저

이 프로시저는 카탈로그에 대한 등록 정보 값을 업데이트합니다.

구문

PROCEDURE update_catalog_property
(
  catalog_name 		IN VARCHAR2,
  catalog_property 	IN VARCHAR2,
  new_value 		IN VARCHAR2
);

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

catalog_property

업데이트할 등록 정보(예: PROP_CACHE_DURATION, PROP_IS_ENABLED)에 대해 설명합니다.

값은 다음 상수 중 하나일 수 있습니다.
  • PROP_CACHE_ASYNC
  • PROP_CACHE_DURATION
  • PROP_CACHE_ENABLED
  • PROP_CONFIGURATION
  • PROP_CUSTOM
  • PROP_DEFAULT_SCHEMA
  • PROP_IS_ENABLED
  • PROP_METADATA

자세한 내용은 카탈로그 유형 및 상수를 참조하십시오.

new_value

새 등록 정보 값입니다.

UPDATE_CATALOG_PROPERTY_CLOB 프로시저

이 절차에서는 CLOB의 카탈로그에 대한 등록 정보 값을 갱신합니다.

구문

PROCEDURE update_catalog_property_clob
(
  catalog_name 		IN VARCHAR2,
  catalog_property 	IN VARCHAR2,
  new_value 		IN CLOB
);

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

catalog_property

검색할 등록 정보에 대해 설명합니다(예: PROP_CACHE_DURATION, PROP_IS_ENABLED).

new_value

CLOB의 새 속성 값입니다.

GET_COLUMN_PROPERTY 함수

카탈로그 테이블의 열에 대한 특정 속성 값(예: PROP_CUSTOM, PROP_METADATA)을 검색합니다.

구문

FUNCTION GET_COLUMN_PROPERTY
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  column_name                    IN VARCHAR2,
  column_property                IN VARCHAR2
)
RETURN VARCHAR2;

매개변수

매개변수 설명

catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

schema_name

소스 카탈로그 스키마의 이름입니다.

table_name

출처 카탈로그 테이블의 이름입니다.

column_name

열 이름입니다.

column_property

속성 값(예: PROP_CUSTOM, PROP_METADATA)을 반환합니다.

GET_COLUMN_PROPERTY_CLOB 함수

열에 대한 특정 속성 값을 CLOB(Character Large Object)로 검색합니다.

구문

FUNCTION GET_COLUMN_PROPERTY_CLOB
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  column_name                    IN VARCHAR2,
  column_property                IN VARCHAR2
)
RETURN VARCHAR2;

매개변수

매개변수 설명

catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

schema_name

소스 카탈로그 스키마의 이름입니다.

table_name

출처 카탈로그 테이블의 이름입니다.

column_name

열 이름입니다.

column_property

속성 값(예: PROP_CUSTOM, PROP_METADATA)을 반환합니다.

UPDATE_COLUMN_PROPERTY 프로시저

업데이트를 소스 객체 주석으로 푸시하는 옵션과 함께 특정 열에 대한 속성 값을 업데이트합니다.

구문

PROCEDURE UPDATE_COLUMN_PROPERTY
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  column_name                    IN VARCHAR2,
  column_property                IN VARCHAR2,
  new_value                      IN VARCHAR2,
  push_to_source                 IN BOOLEAN := FALSE
);

매개변수

매개변수 설명

catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

schema_name

소스 카탈로그 스키마의 이름입니다.

table_name

출처 카탈로그 테이블의 이름입니다.

column_name

열 이름입니다.

column_property

속성 값(예: PROP_CUSTOM, PROP_METADATA)을 업데이트합니다.

new_value

호텔에 대한 새 값을 지정합니다.

push_to_source

속성 업데이트를 소스 객체 주석으로 푸시할지 여부를 나타냅니다.

기본값은 아니오입니다.

UPDATE_COLUMN_PROPERTY_CLOB 프로시저

대용량 데이터에 대한 CLOB(Character Large Object)로 특정 열에 대한 속성 값을 업데이트합니다. 이때 업데이트를 소스 객체 주석으로 푸시하는 옵션이 제공됩니다.

구문

PROCEDURE UPDATE_COLUMN_PROPERTY_CLOB
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  column_name                    IN VARCHAR2,
  column_property                IN VARCHAR2,
  new_value                      IN CLOB,
  push_to_source                 IN BOOLEAN := FALSE
);

매개변수

매개변수 설명
catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

schema_name

소스 카탈로그 스키마의 이름입니다.

table_name

출처 카탈로그 테이블의 이름입니다.

column_name

열 이름입니다.

column_property

속성 값(예: PROP_CUSTOM, PROP_METADATA)을 업데이트합니다.

new_value

CLOB 형식으로 새 값을 지정합니다.

push_to_source

속성 업데이트를 소스 객체 주석으로 푸시할지 여부를 나타냅니다.

기본값은 아니오입니다.

GET_SCHEMA_PROPERTY 프로시저

이 프로시저는 스키마에 대한 등록 정보 값을 반환합니다.

구문

FUNCTION get_schema_property
(
  catalog_name 		IN VARCHAR2,
  schema_name 		IN VARCHAR2,
  schema_property 	IN VARCHAR2
)

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

schema_name

스키마의 이름입니다.

schema_property

검색할 등록 정보에 대해 설명합니다(예: PROP_CUSTOM, PROP_METADATA).

GET_SCHEMA_PROPERTY_CLOB 프로시저

이 프로시저는 스키마에 대한 속성 값을 CLOB 형식으로 반환합니다.

구문

FUNCTION get_schema_property_clob
(
  catalog_name 		IN VARCHAR2,
  schema_name 		IN VARCHAR2,
  schema_property 	IN VARCHAR2
)
RETURN CLOB;

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

schema_name

스키마의 이름입니다.

schema_property

검색할 등록 정보에 대해 설명합니다(예: PROP_CUSTOM, PROP_METADATA).

UPDATE_SCHEMA_PROPERTY 프로시저

이 프로시저는 스키마에 대한 등록 정보 값을 반환합니다.

구문

PROCEDURE update_schema_property
(
  catalog_name 		IN VARCHAR2,
  schema_name 		IN VARCHAR2,
  schema_property 	IN VARCHAR2,
  new_value 		IN VARCHAR2
);

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

schema_name

스키마의 이름입니다.

schema_property

검색할 등록 정보에 대해 설명합니다(예: PROP_CUSTOM, PROP_METADATA).

new_value

새 등록 정보 값입니다.

UPDATE_SCHEMA_PROPERTY_CLOB 프로시저

큰 데이터에 대한 CLOB(Character Large Object)로 스키마에 대한 속성 값을 업데이트합니다.

구문

PROCEDURE UPDATE_SCHEMA_PROPERTY_CLOB
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  schema_property                IN VARCHAR2,
  new_value                      IN CLOB
);

매개변수

매개변수 설명

catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

schema_name

소스 카탈로그 스키마의 이름입니다.

schema_property

속성 값(예: PROP_CUSTOM, PROP_METADATA)을 업데이트합니다.

new_value

호텔에 대한 새 값을 지정합니다.

GET_TABLE_PROPERTY 프로시저

테이블에 대한 등록 정보 값을 출력합니다.

구문

FUNCTION GET_TABLE_PROPERTY
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  table_property                 IN VARCHAR2
)
RETURN VARCHAR2;

매개변수

매개변수 설명

catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

schema_name

소스 카탈로그 스키마의 이름입니다.

table_name

출처 카탈로그 테이블의 이름입니다.

table_property

검색할 속성입니다.

GET_TABLE_PROPERTY_CLOB 프로시저

이 프로시저는 테이블에 대한 속성 값을 CLOB 형식으로 반환합니다.

구문

FUNCTION get_table_property_clob
(
  catalog_name 		IN VARCHAR2,
  schema_name 		IN VARCHAR2,
  table_name 		IN VARCHAR2,
  table_property 	IN VARCHAR2
)
RETURN CLOB;

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

schema_name

스키마의 이름입니다.

table_name

테이블 이름입니다.

table_property

업데이트할 속성(예: PROP_CUSTOM)입니다.

UPDATE_TABLE_PROPERTY 프로시저

이 프로시저는 테이블에 대한 등록 정보 값을 업데이트합니다.

구문

PROCEDURE update_table_property
(
  catalog_name 		IN VARCHAR2,
  schema_name 		IN VARCHAR2,
  table_name 		IN VARCHAR2,
  table_property 	IN VARCHAR2,
  new_value 		IN VARCHAR2
);

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

schema_name

스키마의 이름입니다.

table_name

테이블 이름입니다.

table_property

업데이트할 속성입니다.

new_value

새 등록 정보 값입니다.

UPDATE_TABLE_PROPERTY_CLOB 프로시저

CLOB(Character Large Object) 데이터 유형을 사용하여 테이블 속성 값을 업데이트합니다.

구문

PROCEDURE UPDATE_TABLE_PROPERTY_CLOB
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  table_property                 IN VARCHAR2,
  new_value                      IN CLOB,
  push_to_source                 IN BOOLEAN := FALSE
);

매개변수

매개변수 설명

catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

schema_name

소스 카탈로그 스키마의 이름입니다.

table_name

출처 카탈로그 테이블의 이름입니다.

table_property

업데이트할 테이블 속성입니다.

new_value

CLOB 형식으로 새 값을 지정합니다.

push_to_source

속성 업데이트를 소스 객체 주석으로 푸시할지 여부를 나타냅니다.

기본값은 아니오입니다.

ADD_REQUIRED_CREDENTIAL 프로시저

카탈로그 사용에 필요한 인증서를 정의합니다.

구문

PROCEDURE ADD_REQUIRED_CREDENTIAL
(
  catalog_name                   IN VARCHAR2,
  required_credential            IN VARCHAR2,
  local_credential               IN VARCHAR2 := NULL,
  credential_type                IN VARCHAR2 := NULL
);

매개변수

매개변수 설명

catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

required_credential

필요한 인증서의 이름입니다.

local_credential

사용할 선택적 로컬 자격 증명입니다.

기본값은 NULL입니다.

credential_type

선택사항

이 매개변수는 객체 스토리지 또는 기타 데이터베이스와 같은 외부 서비스에 액세스하는 데 사용되는 인증 방식 유형을 지정합니다. 예를 들어, oci, aws, azure 또는 slack_credential입니다.

자세한 내용은 카탈로그 유형 및 상수를 참조하십시오.

REMOVE_REQUIRED_CREDENTIAL 프로시저

이 절차에서는 카탈로그에서 필수 자격 증명을 제거합니다.

구문

PROCEDURE remove_required_credential
(
  catalog_name 			IN VARCHAR2,
  required_credential 	IN VARCHAR2
);

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

required_credential

제거할 필수 인증서의 이름입니다.

RENAME_REQUIRED_CREDENTIAL 프로시저

이 절차에서는 카탈로그에서 필요한 인증서의 이름을 바꿉니다.

구문

PROCEDURE rename_required_credential
(
  catalog_name 			IN VARCHAR2,
  old_credential_name 	IN VARCHAR2,
  new_credential_name 	IN VARCHAR2
);

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

old_credential_name

필요한 인증서의 이전 이름입니다.

new_credential_name

필요한 인증서의 새 이름입니다.

GET_REQUIRED_CREDENTIAL_PROPERTY 프로시저

이 절차에서는 이름이 지정된 필수 자격 증명의 등록 정보를 검색합니다.

구문

FUNCTION get_required_credential_property
(
  catalog_name 			IN VARCHAR2,
  required_credential 	IN VARCHAR2,
  credential_property 	IN VARCHAR2
)
RETURN VARCHAR2;

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

required_credential

필요한 인증서의 이름입니다.

credential_property

속성 이름(예: PROP_REQUIRED_CREDENTIAL_DESCRIPTION, PROP_REQUIRED_CREDENTIAL_VAULT_SECRET)입니다.

UPDATE_REQUIRED_CREDENTIAL_PROPERTY 프로시저

이 절차에서는 이름이 지정된 필수 자격 증명의 등록 정보를 업데이트합니다.

구문

PROCEDURE update_required_credential_property
(
  catalog_name 			IN VARCHAR2,
  required_credential 	IN VARCHAR2,
  credential_property 	IN VARCHAR2,
  new_value 			IN VARCHAR2
);

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

required_credential

필요한 인증서의 이름입니다.

credential_property

속성 이름(예: PROP_REQUIRED_CREDENTIAL_DESCRIPTION, PROP_REQUIRED_CREDENTIAL_VAULT_SECRET)입니다.

new_value

속성에 대한 새 값입니다.

GET_LOCAL_CREDENTIAL_MAP (오버로드된) 프로시저

이 절차에서는 로컬 자격 증명에 대한 필수 자격 증명 맵을 검색합니다.

구문 1

PROCEDURE get_local_credential_map
(
  catalog_name 		IN VARCHAR2,
  credential_map 	OUT NOCOPY credential_info_map
);

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

credential_map

인증서의 채워진 맵입니다.

구문 2

FUNCTION get_local_credential_map
(
  catalog_name 	IN VARCHAR2,
  show_errors 	IN NUMBER := 0,
  pretty_json 	IN NUMBER := 0
)
RETURN CLOB;

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다.

show_errors

부적합한 로컬 인증서에 대한 오류 메시지가 표시됩니다. 기본값은 0입니다.

pretty_json

PRETTY 옵션을 사용하여 JSON의 형식을 지정합니다. 기본값은 0입니다.

구문 3

PROCEDURE get_local_credential_map
(
  catalog_id 		IN NUMBER,
  credential_map 	OUT NOCOPY SYS.JSON_OBJECT_T
);

매개변수

매개변수 설명

catalog_id

ALL_MOUNTED_CATALOGSCATALOG_ID 열에서 기존 카탈로그의 ID입니다.

credential_map

채워진 맵을 JSON 객체로 사용합니다.

SET_LOCAL_CREDENTIAL 프로시저

이 절차에서는 카탈로그를 사용할 때 사용할 로컬 자격 증명을 지정합니다.

구문

PROCEDURE set_local_credential
(
  catalog_name 			IN VARCHAR2,
  required_credential 	IN VARCHAR2,
  local_credential 		IN VARCHAR2
);

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

required_credential

필요한 인증서의 이름입니다.

local_credential

사용할 자격 증명입니다.

GET_CLOUD_STORAGE_LINK_PROPERTY 함수

카탈로그의 클라우드 스토리지 링크에 대한 특정 속성 값(예: PROP_CUSTOM, PROP_METADATA)을 검색합니다.

구문

FUNCTION GET_CLOUD_STORAGE_LINK_PROPERTY
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  storage_link_name              IN VARCHAR2,
  storage_link_property          IN VARCHAR2
)
RETURN VARCHAR2;

매개변수

매개변수 설명

catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

schema_name

소스 카탈로그 스키마의 이름입니다.

storage_link_name

클라우드 스토리지 링크의 이름입니다.

storage_link_property

속성 값(예: PROP_CUSTOM, PROP_METADATA)을 반환합니다.

GET_CLOUD_STORAGE_LINK_PROPERTY_CLOB 함수

CLOB(Character Large Object)로 클라우드 스토리지 링크에 대한 특정 등록 정보 값을 검색합니다.

구문

FUNCTION GET_CLOUD_STORAGE_LINK_PROPERTY_CLOB
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  storage_link_name              IN VARCHAR2,
  storage_link_property          IN VARCHAR2
)
RETURN CLOB;

매개변수

매개변수 설명

catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

schema_name

소스 카탈로그 스키마의 이름입니다.

storage_link_name

클라우드 스토리지 링크의 이름입니다.

storage_link_property

속성 값(예: PROP_CUSTOM, PROP_METADATA)을 반환합니다.

UPDATE_CLOUD_STORAGE_LINK_PROPERTY 프로시저

카탈로그의 클라우드 스토리지 링크에 대한 특정 등록 정보 값을 업데이트합니다.

구문

PROCEDURE UPDATE_CLOUD_STORAGE_LINK_PROPERTY
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  storage_link_name              IN VARCHAR2,
  storage_link_property          IN VARCHAR2,
  new_value                      IN VARCHAR2
);

매개변수

매개변수 설명

catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

schema_name

소스 카탈로그 스키마의 이름입니다.

storage_link_name

클라우드 스토리지 링크의 이름입니다.

storage_link_property

속성 값(예: PROP_CUSTOM, PROP_METADATA)을 업데이트합니다.

new_value

호텔에 대한 새 값을 지정합니다.

UPDATE_CLOUD_STORAGE_LINK_PROPERTY_CLOB 프로시저

클라우드 스토리지 링크에 대한 특정 등록 정보 값을 더 큰 데이터에 대한 CLOB(Character Large Object)로 업데이트합니다.

구문

PROCEDURE UPDATE_CLOUD_STORAGE_LINK_PROPERTY_CLOB
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  storage_link_name              IN VARCHAR2,
  storage_link_property          IN VARCHAR2,
  new_value                      IN CLOB
);

매개변수

매개변수 설명

catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

schema_name

소스 카탈로그 스키마의 이름입니다.

storage_link_name

클라우드 스토리지 링크의 이름입니다.

storage_link_property

속성 값(예: PROP_CUSTOM, PROP_METADATA)을 업데이트합니다.

new_value

CLOB 형식으로 새 값을 지정합니다.

CREATE_CLOUD_STORAGE_LINK 프로시저

이 절차에서는 카탈로그에 클라우드 스토리지 링크를 만듭니다.

구문

PROCEDURE create_cloud_storage_link
(
  catalog_name 			IN VARCHAR2,
  schema_name 			IN VARCHAR2,
  storage_link_name 	IN VARCHAR2,
  uri 					IN VARCHAR2,
  required_credential 	IN VARCHAR2 := NULL,
  enabled 				IN BOOLEAN := TRUE,
  replace_if_exists 	IN BOOLEAN := FALSE
);

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

schema_name:

스키마 이름입니다.

storage_link_name

스토리지 링크 이름입니다.

uri

버킷 URI입니다.

required_credential

필요한 인증서(또는 퍼블릭 버킷의 경우 NULL)입니다.

기본값은 NULL입니다.

enabled

저장 영역 링크가 검색에 대해 사용으로 설정되었는지 여부를 나타냅니다. 기본값은 TRUE입니다.

replace_if_exists

이미 있는 경우 링크를 바꿉니다. 기본값은 FALSE입니다.

DROP_CLOUD_STORAGE_LINK 프로시저

이 절차에서는 카탈로그에서 클라우드 스토리지 링크를 삭제합니다.

구문

PROCEDURE drop_cloud_storage_link
(
  catalog_name 		IN VARCHAR2,
  schema_name 		IN VARCHAR2,
  storage_link_name IN VARCHAR2
);

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

schema_name:

스키마 이름입니다.

storage_link_name

스토리지 링크 이름입니다.

GET_CLOUD_STORAGE_LINKS 함수

카탈로그에 대한 특정 또는 모든 클라우드 스토리지 링크를 검색합니다.

구문

FUNCTION GET_CLOUD_STORAGE_LINKS
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2 := NULL,
  storage_link_name              IN VARCHAR2 := NULL,
  conditions                     IN VARCHAR2 := NULL,
  flags                          IN NUMBER := 0,
  result_limit                   IN NUMBER := NULL,
  column_flags                   IN NUMBER := 0
)
RETURN CATALOG_STORAGE_LINKS PIPELINED;

매개변수

매개변수 설명

catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

schema_name

(선택사항)

소스 카탈로그 스키마의 이름입니다.

기본값은 NULL입니다.

storage_link_name

(선택사항)

클라우드 스토리지 링크의 이름입니다.

기본값은 NULL입니다.

conditions

(선택사항)

계보 구문을 사용하는 추가 필터 표현식입니다.

기본값은 NULL입니다.

flags

(선택사항)

추가 제어를 위한 플래그입니다.

기본값은 0(영)입니다.

result_limit

(선택사항)

반환할 최대 행 수입니다.

기본값은 NULL입니다.

column_flags

(선택사항)

열 플래그(예: FETCH_PROPERTIES, FETCH_METADATA)

GET_COLUMNS 함수

카탈로그의 테이블 또는 뷰에서 모든 열을 검색합니다.

구문

FUNCTION GET_COLUMNS
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2 := NULL,
  parent_type                    IN VARCHAR2 := NULL,
  column_name                    IN VARCHAR2 := NULL,
  conditions                     IN VARCHAR2 := NULL,
  flags                          IN NUMBER := 0,
  result_limit                   IN NUMBER := NULL,
  column_flags                   IN NUMBER := 0,
  table_name                     IN VARCHAR2 := NULL
)
RETURN COLUMN_RECORDS PIPELINED;

매개변수

매개변수 설명

catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

schema_name

(선택사항)

소스 카탈로그 스키마의 이름입니다.

기본값은 NULL입니다.

parent_type

(선택사항)

상위 객체 유형, 즉 테이블 또는 뷰입니다.

기본값은 NULL입니다.

column_name

(선택사항)

열 이름입니다.

기본값은 NULL입니다.

conditions

(선택사항)

계보 구문을 사용하는 추가 필터 표현식입니다.

기본값은 NULL입니다.

flags

(선택사항)

추가 제어를 위한 플래그입니다.

기본값은 0(영)입니다.

result_limit

(선택사항)

반환할 최대 행 수입니다.

기본값은 NULL입니다.

column_flags

(선택사항)

열 플래그(예: FETCH_PROPERTIES, FETCH_METADATA)

기본값은 0(영)입니다.

table_name

(선택사항)

출처 카탈로그 테이블의 이름입니다.

기본값은 NULL입니다.

CREATE_EXTERNAL_TABLE 프로시저

카탈로그에 외부 테이블을 생성합니다.

구문

PROCEDURE CREATE_EXTERNAL_TABLE
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  storage_link_name              IN VARCHAR2 := NULL,
  file_uri_list                  IN CLOB,
  column_list                    IN CLOB := NULL,
  field_list                     IN CLOB := NULL,
  table_format                   IN CLOB := NULL,
  credential_name                IN VARCHAR2 := NULL,
  replace_if_exists              IN BOOLEAN := FALSE
);

매개변수

매개변수 설명

catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

schema_name

소스 카탈로그 스키마의 이름입니다.

table_name

출처 카탈로그 테이블의 이름입니다.

storage_link_name

(선택사항)

클라우드 스토리지 링크의 이름입니다.

기본값은 NULL입니다.

file_uri_list

CLOB로 사용되는 상대 파일 목록입니다.

column_list

(선택사항)

열 목록.

기본값은 NULL입니다.

field_list

(선택사항)

필드 목록.

기본값은 NULL입니다.

table_format

(선택사항)

CSV, Parquet 또는 Avro, 구분자, 헤더, 스키마 파생 설정 등과 같은 외부 파일 읽기의 형식 또는 옵션입니다. JSON 키-값 쌍으로 표현됩니다.

기본값은 NULL입니다.

credential_name

인증서의 이름입니다.

기본값은 NULL입니다.

replace_if_exists

객체가 이미 있는 경우 대체할지 여부를 나타냅니다.

기본값은 아니오입니다.

CREATE_SCHEMA 프로시저

카탈로그에 새 스키마를 생성합니다. 원격 카탈로그에서 Apache Iceberg 스키마를 생성할 수도 있습니다.

구문

PROCEDURE CREATE_SCHEMA
(
  catalog_name          IN VARCHAR2,
  schema_name           IN VARCHAR2,
  schema_definition     IN CLOB := NULL
);

매개변수

매개변수 설명

catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

schema_name

소스 카탈로그 스키마의 이름입니다.

schema_definition

(선택사항)

스키마 정의 페이로드입니다.

기본값은 NULL입니다.

참고 항목:

DROP_SCHEMA 프로시저

DROP_SCHEMA 프로시저

이 프로시저는 카탈로그의 스키마를 모든 내용과 함께 삭제합니다.

구문

PROCEDURE drop_schema
(
  catalog_name 	IN VARCHAR2,
  schema_name 	IN VARCHAR2
);

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

schema_name:

삭제할 스키마 이름입니다.

GET_OBJECTS 프로시저

이 프로시저는 카탈로그에 대한 모든 객체를 패치(fetch)합니다.

구문

FUNCTION get_objects
(
  catalog_name 	IN VARCHAR2,
  schema_name 	IN VARCHAR2 := NULL,
  object_name 	IN VARCHAR2 := NULL,
  conditions 	IN VARCHAR2 := NULL,
  flags 		IN NUMBER := 0,
  result_limit 	IN NUMBER := NULL
)
RETURN catalog_objects PIPELINED;

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

schema_name

선택적 스키마 이름입니다. 기본값은 NULL입니다.

object_name

선택적 객체 이름입니다. 기본값은 NULL입니다.

conditions

계보 구문을 사용하는 선택적 추가 조건입니다. 기본값은 NULL입니다.

result_limit

선택적 결과 제한입니다. 기본값은 NULL입니다.

GET_SCHEMAS 프로시저

이 프로시저는 카탈로그에 대한 모든 스키마를 인출합니다.

구문

FUNCTION get_schemas
(
  catalog_name 	IN VARCHAR2,
  schema_name 	IN VARCHAR2 := NULL,
  conditions 	IN VARCHAR2 := NULL,
  flags 		IN NUMBER := 0,
  result_limit 	IN NUMBER := NULL,
  column_flags 	IN NUMBER := 0
)
RETURN catalog_schemas PIPELINED;

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

schema_name

선택적 스키마 이름입니다. 기본값은 NULL입니다.

conditions

계보 구문을 사용하는 선택적 추가 조건입니다. 기본값은 NULL입니다.

result_limit

선택적 결과 제한입니다. 기본값은 NULL입니다.

column_flags

선택적 열 플래그(예: FETCH_PROPERTIES, FETCH_METADATA). 기본값은 0입니다.

GET_TABLES 프로시저

이 프로시저는 카탈로그의 모든 테이블을 패치(fetch)합니다.

구문

FUNCTION get_tables
(
  catalog_name 		IN VARCHAR2,
  schema_name 		IN VARCHAR2 := NULL,
  table_name 		IN VARCHAR2 := NULL,
  conditions 		IN VARCHAR2 := NULL,
  flags 			IN NUMBER := 0,
  result_limit 		IN NUMBER := NULL,
  column_flags 		IN NUMBER := 0
)
RETURN catalog_tables PIPELINED;

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

schema_name

선택적 스키마 이름입니다. 기본값은 NULL입니다.

table_name

선택적 테이블 이름입니다. 기본값은 NULL입니다.

conditions

계보 구문을 사용하는 선택적 추가 조건입니다. 기본값은 NULL입니다.

result_limit

선택적 결과 제한입니다. 기본값은 NULL입니다.

column_flags

선택적 열 플래그(예: FETCH_PROPERTIES, FETCH_METADATA). 기본값은 0입니다.

주:

  • RECORD 유형은 데이터베이스의 명명된 필드와 함께 구조화된 데이터를 설명합니다.

  • RECORD 유형의 구조를 보려면 데이터베이스의 정보 스키마, 시스템 카탈로그를 질의하거나 데이터베이스 검사 툴을 사용해야 합니다.

GET_TABLE 프로시저

출력 및 캐싱 고려 사항을 사용자 정의하는 옵션을 사용하여 카탈로그의 특정 테이블에 대한 상세 정보를 레코드로 검색합니다.

구문

PROCEDURE GET_TABLE
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  table_info                     OUT NOCOPY catalog_table,
  options                        IN CLOB := NULL,
  flags                          IN NUMBER := 0,
  column_flags                   IN NUMBER := 0,
  prev_gen_sql                   IN CLOB := NULL,
  prev_ts                        IN TIMESTAMP WITH TIME ZONE := NULL
);

매개변수

매개변수 설명

catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

schema_name

소스 카탈로그 스키마의 이름입니다.

table_name

출처 카탈로그 테이블의 이름입니다.

options

JSON 객체로서의 생성 옵션(예: distinct, rowLimit, select, orderBy 및 directive)입니다.

기본값은 NULL입니다.

flags

(선택사항)

추가 제어를 위한 플래그입니다.

기본값은 0(영)입니다.

column_flags

(선택사항)

열 플래그(예: FETCH_PROPERTIES, FETCH_METADATA)

기본값은 0(영)입니다.

prev_gen_sql

증분 처리를 위해 이전에 생성된 SELECT 문(알려진 경우)

기본값은 NULL입니다.

prev_ts

알 수 있는 경우 이전 세대 시간 기록입니다.

기본값은 NULL입니다.

참고 항목:

GET_TABLE 함수

GET_TABLE 함수

특정 테이블에 대한 세부 정보를 JSON 형식으로 CLOB(Character Large Object)로 검색합니다.

구문

FUNCTION GET_TABLE
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  options                        IN CLOB := NULL,
  flags                          IN NUMBER := 0,
  column_flags                   IN NUMBER := 0,
  prev_gen_sql                   IN CLOB := NULL,
  prev_ts                        IN TIMESTAMP WITH TIME ZONE := NULL
)
RETURN CLOB;

매개변수

매개변수 설명

catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

schema_name

소스 카탈로그 스키마의 이름입니다.

table_name

출처 카탈로그 테이블의 이름입니다.

options

JSON 객체로서의 생성 옵션(예: distinct, rowLimit, select, orderBy 및 directive)입니다.

기본값은 NULL입니다.

flags

(선택사항)

추가 제어를 위한 플래그입니다.

기본값은 0(영)입니다.

column_flags

(선택사항)

열 플래그(예: FETCH_PROPERTIES, FETCH_METADATA)

기본값은 0(영)입니다.

prev_gen_sql

증분 처리를 위해 이전에 생성된 SELECT 문(알려진 경우)

기본값은 NULL입니다.

prev_ts

알 수 있는 경우 이전 세대 시간 기록입니다.

기본값은 NULL입니다.

참고 항목:

GET_TABLE 프로시저

DROP_TABLE 프로시저

이 프로시저는 카탈로그에서 테이블을 삭제합니다.

구문

PROCEDURE drop_table
(
  catalog_name 	IN VARCHAR2,
  schema_name 	IN VARCHAR2,
  table_name 	IN VARCHAR2
);

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

schema_name

스키마 이름입니다.

table_name

테이블 이름입니다.

GENERATE_TABLE_SELECT(오버로드된) 프로시저

이 프로시저는 논리적 테이블에 대한 SELECT 문을 생성합니다.

구문

PROCEDURE generate_table_select
(
  catalog_name 		IN VARCHAR2,
  schema_name 		IN VARCHAR2,
  table_name 		IN VARCHAR2,
  stmt 				IN OUT NOCOPY CLOB,
  options 			IN CLOB := NULL,
  prev_gen_sql 		IN CLOB := NULL,
  prev_ts 			IN TIMESTAMP WITH TIME ZONE := NULL
);

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

schema_name

스키마 이름입니다.

table_name

테이블 이름입니다.

stmt

생성된 SELECT 문을 출력으로 표시합니다.

options

JSON 객체로서의 생성 옵션(예: distinct, rowLimit, select, orderBy)입니다. 기본값은 NULL입니다.

prev_gen_sql

이전에 생성된 SELECT 문(알려진 경우) 기본값은 NULL입니다.

prev_ts

이전 세대 시간 기록(알려진 경우)입니다. 기본값은 NULL입니다.

구문

FUNCTION generate_table_select
(
  catalog_name 	IN VARCHAR2,
  schema_name 	IN VARCHAR2,
  table_name 	IN VARCHAR2,
  options 		IN CLOB := NULL,
  prev_gen_sql 	IN CLOB := NULL,
  prev_ts 		IN TIMESTAMP WITH TIME ZONE := NULL
)
RETURN CLOB;

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

schema_name

스키마 이름입니다.

table_name

테이블 이름입니다.

stmt

생성된 SELECT 문을 출력으로 표시합니다.

options

JSON 객체로서의 생성 옵션(예: distinct, rowLimit, select, orderBy)입니다. 기본값은 NULL입니다.

prev_gen_sql

이전에 생성된 SELECT 문(알려진 경우) 기본값은 NULL입니다.

prev_ts

이전 세대 시간 기록(알려진 경우)입니다. 기본값은 NULL입니다.

OPEN_TABLE_CURSOR 프로시저

이 프로시저는 논리적 테이블의 데이터를 반환하는 커서를 엽니다.

구문

PROCEDURE open_table_cursor
(
  catalog_name 	IN VARCHAR2,
  schema_name 	IN VARCHAR2,
  table_name 	IN VARCHAR2,
  table_cursor 	IN OUT NOCOPY SYS_REFCURSOR,
  options 		IN CLOB := NULL
);

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

schema_name

선택적 스키마 이름입니다. 기본값은 NULL입니다.

table_name

선택적 테이블 이름입니다. 기본값은 NULL입니다.

table_cursor

데이터를 반환하는 커서입니다.

options

JSON 객체(예: rowLimit, select, orderBy)로 옵션을 생성합니다. 기본값은 NULL입니다.

FLUSH_CATALOG_CACHE 프로시저

이 프로시저는 카탈로그 메타 데이터 캐시를 비우고

구문

PROCEDURE flush_catalog_cache
(
  catalog_name 	IN VARCHAR2,
  auto_commit	IN BOOLEAN := TRUE
);

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

auto_commit

변경 사항을 자동으로 커밋해야 하는지 여부를 나타냅니다. 기본값은 TRUE입니다.

PREFILL_CATALOG_CACHE 프로시저

이 프로시저는 지정된 카탈로그에 대한 캐시를 현재 데이터로 채웁니다.

구문

PROCEDURE prefill_catalog_cache
(
  catalog_name 	IN VARCHAR2,
  schema_name 	IN VARCHAR2 := NULL,
  auto_commit 	IN BOOLEAN := TRUE
);

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

schema_name

스키마의 이름입니다.

auto_commit

변경 사항을 자동으로 커밋해야 하는지 여부를 나타냅니다. 기본값은 TRUE입니다.

CREATE_SYNCHRONIZED_SCHEMAS 프로시저

이 프로시저는 원격 카탈로그 정의와 동기화된 로컬 데이터베이스 스키마를 생성합니다.

구문

PROCEDURE create_synchronized_schemas
(
  catalog_name IN VARCHAR2,
  schema_names IN VARCHAR2 := NULL,
  restrictions IN CLOB := NULL
);

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

schema_name

콤마로 구분된 스키마 이름 목록입니다(따옴표로 묶거나 따옴표로 묶지 않음). 모든 스키마를 동기화하려면 기본값은 NULL입니다.

restrictions

카탈로그 엔티티의 범위를 지정하는 JSON 문서입니다. 기본값은 NULL입니다.

DROP_SYNCHRONIZED_SCHEMAS 프로시저

이 프로시저는 하나 이상의 동기화된 스키마를 삭제합니다.

구문

PROCEDURE drop_synchronized_schemas
(
  catalog_name IN VARCHAR2,
  schema_names IN VARCHAR2 := NULL,
  restrictions IN CLOB := NULL
);

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

schema_name

콤마로 구분된 스키마 이름 목록입니다(따옴표로 묶거나 따옴표로 묶지 않음). 모든 스키마를 동기화하려면 기본값은 NULL입니다.

restrictions

카탈로그 엔티티의 범위를 지정하는 JSON 문서입니다. 기본값은 NULL입니다.

UPDATE_SYNCHRONIZED_SCHEMA_PROPERTY 프로시저

이 절차에서는 동기화된 스키마의 등록 정보를 업데이트합니다.

구문

PROCEDURE update_synchronized_schema_property
(
  catalog_name 	IN VARCHAR2,
  property_name IN VARCHAR2,
  new_value 	IN CLOB
);

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

property_name

업데이트할 등록 정보 이름입니다.

new_value

CLOB인 새 값입니다.

SYNCHRONIZE_SHARED_CATALOGS 프로시저

더 이상 사용할 수 없는 공유를 기반으로 카탈로그를 처리합니다.

구문

PROCEDURE SYNCHRONIZE_SHARED_CATALOGS
(
  provider_id                    IN NUMBER := NULL,
  remove_unavailable             IN BOOLEAN := TRUE
);

매개변수

매개변수 설명
provider_id

(선택사항)

동기화 범위를 식별합니다. 변경 사항은 지정된 공유 제공자 ID로 제한됩니다. NULL인 경우 만료된 공유를 포함하여 등록된 모든 공유 제공자를 동기화합니다.

기본값은 NULL입니다.

remove_unavailable

공유 가용성을 기반으로 카탈로그에 대한 작업을 결정합니다.

  • TRUE: 삭제되었거나 사용할 수 없는 공유에 대한 객체를 마운트 해제합니다.

  • FALSE: 공유를 사용할 수 없는 경우 객체를 사용 안함으로 설정합니다.

기본값은 TRUE입니다.

CREATE_SYNCHRONIZED_VIEWS 프로시저

제한 정의를 위해 카탈로그 테이블에 뷰를 생성합니다.

구문

PROCEDURE CREATE_SYNCHRONIZED_VIEWS
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2 := NULL,
  target_schema                  IN VARCHAR2 := NULL,
  table_names                    IN VARCHAR2 := NULL,
  view_prefix                    IN VARCHAR2 := NULL,
  replace_existing               IN BOOLEAN := FALSE,
  ignore_errors                  IN BOOLEAN := TRUE
);

매개변수

매개변수 설명

catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

schema_name

소스 카탈로그 스키마의 이름입니다.

기본값은 NULL입니다.

target_schema

대상 스키마의 이름입니다.

기본값은 NULL입니다.

table_names

특정 테이블이 대상으로 지정된 경우 콤마로 구분된 테이블 이름 목록입니다.

기본값은 NULL입니다.

view_prefix

생성된 각 뷰 이름 앞에 추가할 문자열입니다.

기본값은 NULL입니다.

replace_existing

객체가 이미 있는 경우 대체할지 여부를 나타냅니다.

기본값은 아니오입니다.

ignore_errors

오류를 무시하고 나머지 객체로 처리를 계속할지 여부를 나타냅니다.

기본값은 TRUE입니다.

COPY_TABLE_PROPERTIES 프로시저

속성 집합을 선택하고 열 이름 바꾸기 매핑을 지정하는 옵션을 사용하여 소스 테이블에서 카탈로그 및 스키마의 대상 테이블로 테이블 속성 및 선택적으로 열 속성을 복사합니다.

구문

PROCEDURE COPY_TABLE_PROPERTIES
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  target_catalog_name            IN VARCHAR2 := DEFAULT_CATALOG,
  target_schema_name             IN VARCHAR2 := NULL,
  target_table_name              IN VARCHAR2 := NULL,
  properties                     IN VARCHAR2 := PROP_CUSTOM,
  copy_column_props              IN BOOLEAN := TRUE,
  renamed_columns                IN CLOB := NULL
);

매개변수

매개변수 설명
catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

schema_name

소스 카탈로그 스키마의 이름입니다.

table_name

출처 카탈로그 테이블의 이름입니다.

target_catalog_name

대상 카탈로그의 이름입니다.

기본값은 DEFAULT_CATALOG입니다.

target_schema_name

대상 스키마의 이름입니다.

기본값은 NULL입니다.

target_table_name

대상 카탈로그 테이블의 이름입니다.

기본값은 NULL입니다.

properties

복사할 속성(예: CUSTOM:prop_x)입니다. 기본값은 PROP_CUSTOM입니다.

copy_column_props

열 사용자정의 속성을 복사할지 여부를 나타냅니다.

기본값은 TRUE입니다.

renamed_columns

이름이 바뀐 대상 열의 JSON 매핑(예: {"source_col":"target_col"})입니다.

기본값은 NULL입니다.

GRANT_TO_RECIPIENT 프로시저

이 절차에서는 카탈로그에 대한 액세스 권한을 특정 공유 수신자에게 부여합니다.

구문

PROCEDURE grant_to_recipient
(
  catalog_name 		IN VARCHAR2,
  recipient_name 	IN VARCHAR2
);

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

recipient_name

공유 수신자의 이름입니다(DBMS_SHARE.CREATE_SHARE_RECIPIENT로 생성됨).

REVOKE_FROM_RECIPIENT 프로시저

이 절차에서는 특정 수신자의 카탈로그에 대한 액세스를 취소합니다.

구문

PROCEDURE revoke_from_recipient
(
  catalog_name 		IN VARCHAR2,
  recipient_name 	IN VARCHAR2,
  owner 			IN VARCHAR2 := NULL
);	

매개변수

매개변수 설명

catalog_name

기존 카탈로그의 이름입니다. 대문자로 변환됩니다.

recipient_name

공유 수신자의 이름입니다(DBMS_SHARE.CREATE_SHARE_RECIPIENT로 생성됨).

owner

카탈로그 및 수신자의 소유자입니다. 기본값은 NULL입니다.

CLEAR_CATALOG_EVENTS 프로시저

출력 및 캐싱 고려 사항을 사용자 정의하는 옵션을 사용하여 카탈로그의 특정 테이블에 대한 상세 정보를 레코드로 검색합니다.

구문

PROCEDURE CLEAR_CATALOG_EVENTS
(
  catalog_name                   IN VARCHAR2,
  from_time                      IN TIMESTAMP WITH TIME ZONE := NULL,
  to_time                        IN TIMESTAMP WITH TIME ZONE := NULL
);

매개변수

매개변수 설명

catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

from_time

선택사항

지울 이벤트 범위에 대한 시작 시간입니다.

기본값은 NULL입니다.

to_time

선택사항

이벤트 범위를 지울 종료 시간입니다.

기본값은 NULL입니다.

CREATE_ICEBERG_TABLE 프로시저

카탈로그의 지정된 스키마 내에 새 Iceberg 테이블을 만들어 결과 메타데이터를 반환합니다.

구문

PROCEDURE CREATE_ICEBERG_TABLE
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  table_definition               IN CLOB,
  out_metadata                   OUT NOCOPY CLOB
);

매개변수

매개변수 설명
catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

schema_name

소스 카탈로그 스키마의 이름입니다.

table_name

새 테이블의 이름입니다.

table_definition

CLOB로서의 테이블 정의입니다.

out_metadata

결과 테이블 메타데이터가 출력 뒤에 옵니다.

ADD_ICEBERG_SNAPSHOT 프로시저

Iceberg 테이블에 스냅샷을 추가하여 세부 메타데이터, 계보 및 콘텐츠 추적을 위한 선택적 매개변수를 비롯한 데이터 변경사항을 나타냅니다.

구문

PROCEDURE ADD_ICEBERG_SNAPSHOT
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  new_snapshot_id                IN NUMBER,
  new_timestamp                  TIMESTAMP WITH TIME ZONE,
  new_manifest_list              IN VARCHAR2,
  new_summary                    IN CLOB := NULL,
  new_parent_snapshot_id         IN NUMBER := NULL,
  new_sequence_number            IN NUMBER := NULL,
  new_first_row_id               IN NUMBER := NULL,
  new_added_row_count            IN NUMBER := NULL,
  new_schema_id                  IN NUMBER := NULL,
  requirements                   IN CLOB := NULL,
  out_metadata                   OUT NOCOPY CLOB
);

매개변수

매개변수 설명
catalog_name

출처 카탈로그의 이름입니다. 값은 대문자입니다.

schema_name

소스 카탈로그 스키마의 이름입니다.

table_name

새 테이블의 이름입니다.

new_snapshot_id

새 스냅샷에 대한 고유 식별자입니다.

new_timestamp

스냅샷이 생성된 시간 기록입니다.

new_manifest_list

매니페스트 목록 파일의 위치, 경로 또는 URI입니다.

new_summary

"작업" 필드가 하나 이상 포함된 스냅샷의 메타데이터 요약입니다.

new_parent_snapshot_id

이 스냅샷의 상위 항목의 ID입니다. 이는 루트 스냅샷에 적용할 수 없습니다.

new_sequence_number

테이블 변경 순서를 추적하기 위한 증분 번호입니다.

new_first_row_id

스냅샷의 첫번째 데이터 파일에서 첫번째 행에 지정된 시작 행 ID입니다.

new_added_row_count

스냅샷에 추가된 행 수입니다.

new_schema_id

스냅샷이 생성될 때 활성화된 테이블 스키마의 ID입니다.

requirements

JSON 배열 형식의 커밋에 대한 사전 조건입니다.

out_metadata

결과 테이블 메타데이터가 출력 뒤에 옵니다.