2.2 Oracle Textユーザーの作成

Oracle Text索引を作成して、Oracle Text PL/SQLパッケージを使用する前に、CTXAPPロールを持つユーザーを作成する必要があります。このロールを使用すると、次の操作を実行できます。

  • Oracle Textの索引プリファレンスの作成および削除

  • Oracle TextのPL/SQLパッケージの使用

Oracle Textアプリケーション開発者ユーザーを作成するには、システム管理者ユーザーとして次のステップを実行します。

  1. ユーザーの作成

    次のSQL文で、パスワードpasswordを持つ、MYUSERというユーザーを作成します。

    CREATE USER myuser IDENTIFIED BY password;
    
  2. ユーザーへのロールの付与

    次のSQL文で、必要なロールRESOURCECONNECTおよびCTXAPPMYUSERに付与します。

    GRANT RESOURCE, CONNECT, CTXAPP TO MYUSER;
    
  3. CTX PL/SQLパッケージのEXECUTE権限の付与

    Oracle Textには、Oracle Text索引の同期化からドキュメントのハイライト表示までを実行できる複数のパッケージが組み込まれています。たとえば、CTX_DDLパッケージには、索引を同期化できるSYNC_INDEXプロシージャがあります。これらのパッケージについては、『Oracle Textリファレンス』を参照してください。

    これらのプロシージャをストアド・プロシージャからコールする場合、アプリケーションではパッケージの実行権限が必要です。たとえば、MYUSERにすべてのOracle Textパッケージのexecute権限を付与するには、次のSQL文を入力します。

    GRANT EXECUTE ON CTXSYS.CTX_CLS TO myuser;
    GRANT EXECUTE ON CTXSYS.CTX_DDL TO myuser;
    GRANT EXECUTE ON CTXSYS.CTX_DOC TO myuser;
    GRANT EXECUTE ON CTXSYS.CTX_OUTPUT TO myuser;
    GRANT EXECUTE ON CTXSYS.CTX_QUERY TO myuser;
    GRANT EXECUTE ON CTXSYS.CTX_REPORT TO myuser;
    GRANT EXECUTE ON CTXSYS.CTX_THES TO myuser;
    GRANT EXECUTE ON CTXSYS.CTX_ULEXER TO myuser;

    ノート:

    これらの権限はCTXAPPロールに付与されます。ただし、ロール権限がPL/SQLプロシージャで常に有効ではないため、これらの権限をCTXAPPロールを持つユーザーに明示的に付与すると最も安全です。