SQLタスクの処理
SQLタスクでは、データ統合パイプラインでSQLオブジェクトを実行できます。
現在、実行できるSQLオブジェクトはストアド・プロシージャのみです。ストアド・プロシージャは、ワークスペース内のデータベース・データ・アセットに関連付けられているデータ・ソースに存在する必要があります。サポートされるデータベースのリストについては、SQLタスクでサポートされるデータ・ソースを参照してください。
ストアド・プロシージャで定義された変数は、SQLタスクでIN (入力)、OUT (出力)およびIN-OUT (入力出力)パラメータとして公開されます。SQLタスク・パラメータとして使用可能な、サポートされているSQLデータ型のリストについては、サポートされているSQLデータ型を参照してください。
SQLタスクを作成するときに、構成できるのは入力パラメータの値のみです。パイプラインでSQLタスクを構成するとき、およびSQLタスクを含むパイプラインを実行するときに、デフォルト値をオーバーライドできます。パイプラインでは、SQLタスクからダウンストリームされるタスクおよび操作で、アップストリームのSQLタスクからの出力を使用できます。
次のページでは、データ統合でSQLタスクを作成、編集および削除する方法について説明します。
次のページでは、実行できるその他の管理タスクについて説明します。
SQLタスクでサポートされるデータ・ソース
特定のデータベースに保存されているSQLストアド・プロシージャを実行できます。
現在、次のデータベースのストアド・プロシージャがサポートされています:
- Oracle Database (11g以外)
- Oracle Autonomous AI Lakehouse
- Oracle Autonomous AI Transaction Processing
サポートされているバージョンについては、サポートされているデータ・ソースとそのバージョンを参照してください。
サポートされるSQLデータ型
SQLストアド・プロシージャで定義された変数は、作成または実行するSQLタスクでパラメータとして公開されます。
SQLタスクでストアド・プロシージャを使用する場合、入力および出力パラメータとして次のSQLデータ型がサポートされています:
| SQL | JDBC/Java |
|---|---|
| VARCHAR | java.lang.String |
| CHAR | java.lang.String |
| LONGVARCHAR | java.lang.String |
| BIT | boolean |
| NUMERIC | java.math.BigDecimal |
| TINYINT | byte |
| SMALLINT | short |
| INTEGER | int |
| BIGINT | long |
| REAL | float |
| FLOAT | float |
| DOUBLE | double |
| VARBINARY | byte[ ] |
| BINARY | byte[ ] |
| DATE | java.sql.Date |
| TIME | java.sql.Time |
| TIMESTAMP | java.sql.Timestamp |
次のSQLデータ型はまだサポートされていません:
| SQL | JDBC/Java |
|---|---|
| ARRAY | java.sql.Array |
| REF | java.sql.Ref |
| STRUCT | java.sql.Struct |
| CLOB | java.sql.Clob |
| BLOB | java.sql.Blob |
パフォーマンスの向上
最小限の情報を取得するには、fields問合せパラメータに値metadataを指定します。これにより、使用されるシステム・リソースが少なくなり、取得時間が短縮されます。
たとえば、LIST_PUBLISHED_OBJECTS関数を使用する場合は、fields問合せパラメータに値metadataを指定して、指定したアプリケーションのすべての公開済オブジェクトのリストを取得します。