web-dev-qa-db-ja.com

Oracle ASSEMBLYとは何ですか?

Oracle SQLのコンテキストでのOracle Assemblyとは何ですか?

GV$SQLCOMMANDにリストされています。 GV$SQLCOMMANDは「実際の」SQLステートメントの完全なガイドではありませんが、たとえば、UPSERTの代わりにMERGEがあります。

   INST_ID COMMAND_TYPE COMMAND_NAME             CON_ID
---------- ------------ -------------------- ----------
         1          215 DROP Assembly                 0
         1          216 CREATE Assembly               0
         1          217 ALTER Assembly                0

コマンドが何をしているのかはわかりませんが、コマンドは機能します。奇妙なことに、構文には/が必要であり、これらのオブジェクトにはPL/SQLが含まれている可能性があります。

SQL> create or replace Assembly some_Assembly is 'some string';
  2  /

Assembly created.

SQL> select * from all_assemblies;

OWNER           Assembly_NAME   FILE_SPEC       SECURITY_L IDENTITY        STATUS
--------------- --------------- --------------- ---------- --------------- -------
JHELLER         SOME_Assembly   some string     SAFE                       VALID

データディクショナリビューが機能し、文書化されています: ALL_ASSEMBLIES

アセンブリを使用するOracle製品がいくつかありますが、それらがこのSQLステートメントに直接関連付けられているかどうかはわかりません。たとえば、 Oracle Virtual Assembly Builderを使用したOracle®Fusion MiddlewareOracle Enterprise Managerのデータベースアセンブリ 、および 。NETのデータベース拡張機能 があります。 (これにはアセンブリが含まれます)。

Assemblyとは何ですか?非推奨のコマンド?実装されていない、または文書化されていない機能ですか?または、私が見たことのない場所に記載されている実際のコマンド?

6
Jon Heller

これについてはインターネット上ではまったく何もありません。%_ASSEMBLIESビューに関する Oracle docs でさえ、実際に何が表示されているかを示していません。

ただし、$Oracle_HOME/rdbms/adminを調べてみると、(Assembly$にある)データディクショナリビューへの次の参照が表示されます。

remark
remark  FAMILY "ASSEMBLIES"
remark
remark  Views for showing information about PL/SQL Assemblies:
remark  USER_ASSEMBLIES, ALL_ASSEMBLIES and DBA_ASSEMBLIES
remark
create or replace view USER_ASSEMBLIES
(Assembly_NAME, FILE_SPEC, SECURITY_LEVEL, IDENTITY, STATUS)
.......

これは間違いなく、これらのビューと関連するCREATE/DROP/ALTER Assemblyコマンドは.NETストアドプロシージャサポート用であると私に言っています。

2
Philᵀᴹ

このページ はあなたが探しているものを持っていると思います-

アセンブリ:アセンブリは、DLLまたは.EXEが.NETコンパイラーによってコンパイルされたときに作成されるモジュールを表すMicrosoftの用語です。

私がそれを正しく理解すれば、Javaの「クラスファイル」に相当する.NETです。

11gから、.NETのプロシージャと関数を開発してOracleデータベースにデプロイできるようになりました。

これを行う手順を説明するリンクは次のとおりです-

http://docs.Oracle.com/cd/E20213_01/doc/win.112/e17724/devdeploy.htm

これがアセンブリと呼ばれることを今まで知りませんでした。この質問をしていただきありがとうございます。 :)

0
ruudvan