3.196 ALL_JSON_COLUMNS

ALL_JSON_COLUMNSは、現行のユーザーがアクセスできるJavaScript Object Notation (JSON)列に関する情報を示します。

このビューには、JSONデータを戻すことが保証されている表およびビューの列に関する情報が表示されます。これには次のものがあります。

  • データ型JSONの列

  • IS JSON条件を含むチェック制約が定義されている列(IS JSON条件が常に強制されます)。このようなチェック制約には、IS JSON条件のみを含めることも、論理AND条件の一部としてIS JSON条件を含めることもできます。

    たとえば、次のチェック制約によって、IS JSON条件が常に強制され、その結果、ALL_JSON_COLUMNSビューにmycolが表示されるようになります。

    mycol IS JSON
    mycol IS JSON AND LENGTH(mycol) > 100

    ただし、次のチェック制約では、IS JSON条件が強制されることはありません。これは論理OR条件の一部であるため、mycolALL_JSON_COLUMNSビューから省略されるためです。

    mycol IS JSON OR LENGTH(mycol) > 100
  • JSONデータを返すSQL関数の戻り値として定義された列を表示します。次のような関数があります。
    • TREAT ( expr AS JSON )
    • JSON_ARRAYJSON_ARRAYAGGJSON_MERGEPATCHJSON_OBJECTJSON_OBJECTAGGJSON_QUERYJSON_SERIALIZEJSON_TRANSFORM

    たとえば、ビューv1に対する次の定義で、列mycolJSON_OBJECT関数の戻り値として定義されており、この結果、mycolALL_JSON_COLUMNSビューに表示されます。

    CREATE TABLE t1 (text varchar2(100));
    CREATE VIEW v1 AS SELECT JSON_OBJECT(text) AS mycol FROM t1;

関連ビュー

  • DBA_JSON_COLUMNSは、すべてのJSON列に関する情報を示します。

  • USER_JSON_COLUMNSは、ユーザーが所有者であるJSON列に関する情報を示します。このビューは、OWNER列を表示しません。

データ型 NULL 説明

OWNER

VARCHAR2(128)

JSON列を持つ表の所有者

TABLE_NAME

VARCHAR2(128)

JSON列を持つ表の名前

OBJECT_TYPE

VARCHAR2(5)

オブジェクト型:

  • TABLE

  • VIEW

COLUMN_NAME

VARCHAR2(128)

JSON列の名前

FORMAT

VARCHAR2(9)

JSONデータのフォーマット

DATA_TYPE

VARCHAR2(13)

JSON列のデータ型

関連項目: