問題タブ [execute-immediate]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
oracle - Oracleの動的SQLでのBLOB型の使用
Iamは、テーブルに挿入するためのexecute_immediateステートメントで使用する文字列を作成しようとしています。使用される列の1つはBLOB型です。'||'を使用しているIam 列を追加してSQLを構築する演算子。BLOB型は'||'では機能しないようです。サンプルコード(オリジナルではない)とエラーを参照してください
エラー
エラーレポート: ORA-06550:行9、列17: PLS-00306:'||'の呼び出しで引数の数またはタイプが間違っています ORA-06550:行9、列5: PL / SQL:ステートメントは無視されます 06550. 00000-「行%s、列%s:\ n%s」 *原因:通常、PL/SQLコンパイルエラー。 *アクション:
My table BLOB_TEST is
create table BLOB_TEST
(
PERSON_NAME varchar2(20),
PHOTO blob
);
助けてください。私が欲しいのは、BLOB値をテーブルに挿入するために挿入ステートメントを動的に実行するオプションです。
sql - EXECUTE IMMEDIATE 'いくつかのコマンド'
1 つの EXECUTE IMMEDIATE ブロック内でいくつかの SQL コマンドを実行することは可能ですか?
この構文の問題点:
1 つの SQL コマンドで問題なく動作します。
oracle - execute immediate およびオプションの引数を使用して、PL/SQL でオブジェクト インスタンスを作成します。
次のように定義されたオブジェクトがあります。
そして、このような関数(コンストラクターを使用できることはわかっています):
このようなオブジェクトタイプのインスタンスを作成しようとしています
しかし、私はエラーが発生します:
PLS-00306: wrong number or types of arguments in call to 'NEW_MYOBJ'
私がやろうとしていることをすることさえ可能ですか?
実際のコード v_field の FTR は動的に定義する必要があります。
oracle - Oracleのテーブルに値として格納されたSQLを実行し、SSRSレポートでレコードセットを返します
SQL ステートメントをフィールドとして作成するクエリがあります。このステートメントを実行し、SSRS レポートでレコードセットを返したいと考えています。
これにより SQL ステートメントが生成されますが、この SQL を実行したいと考えています。
これはこの質問の延長です。
execute immediate 、currs、dbms_sql を使用しようとしましたが、出力が生成されません。ヒキガエルに使用。「PL/SQLプロシージャが正常に完了しました」と表示されるだけです
以下を使用して
oracle - COLUMN NEW_VALUE が SELECT ステートメントで設定されないのはなぜですか?
次の SQL*Plus コードがあります。
この時点では、&x2 はまだ空であり、colname は NULL ではありません。他に何もないのに、なぜ「a」に設定されなかったのですか?
db2 - DB2 行数を返す動的クエリの実行
ここでは、変数に行数を返す DB2 で動的クエリを実行しようとしています。
動的クエリの結果を変数に格納して、さらに使用できるようにする方法を誰か助けてもらえますか? 以下はコード スニペットです:--
以下のエラーを取得:- エラー [42703] [IBM][DB2/AIX64] SQL0206N "CNT" は、それが使用されているコンテキストでは無効です。SQLSTATE=42703
loops - 右括弧がなく、追加される列が既にテーブルに存在するというエラーがコードに表示されます
このコードを実行しようとしています
しかし、コードが2つのエラーのいずれかを表示するたびに: ORA-01430: 追加されている列がテーブルに既に存在します
- 00000 - 「右括弧がありません」
そして、SAR テーブルを確認すると、新しい列が 5 つしか作成されていません。なぜこれが起こっているのかわかりません。ほとんどすべてを試しました。
oracle - PL/SQL - パイプライン関数で即時実行
パイプライン関数で動的クエリを実行し、このクエリの結果を返したいと考えています。これを行うことは可能ですか?パイプライン関数は、テーブルのように動作するため、アプリケーションの適切なインターフェイスを実現するのに便利です。
関数:
sqlplus - sqlplus で即時切り捨てテーブルを実行する
execute immediate 'truncate table trade_economics';
sqlplus スクリプトで次のエラーが発生するのはなぜですか?
oracle - 別のテーブルとビューから削除/挿入する方法
厄介な問題があります。Oracle 10 には、そのようなことが何度も繰り返されるビューとテーブルのペアがあります。
View/Table 2 と 3 と 4 と 5... と 36 も同じです。
私はこのようなことをしたいと思います:
次に、36 ペアすべてに対して関数を呼び出します。
驚くべきことではありませんが、これはハードコードされたものよりも約 50% 遅くなります。
私の質問: 高速化する方法について誰か考えがありますか? またはさらに良いことに、どうすればこれを他とは違うものにすることができますか?
編集
全体は次のように構築されます。
プロシージャ proc_import は、ジョブによって 1 晩に 1 回呼び出されます。すべての proc_import_table 呼び出しがハードコーディングされている理由は、一部のテーブルで追加のインポート情報が必要になるためです。
許可されているかどうかわからないため、ここに元のコードをコピーして貼り付けることはできません。お役に立てれば...