問題タブ [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.

0 投票する
3 に答える
4925 参照

oracle - Oracleで即時実行によって返されたデータを格納および移入する方法は?

私のプロジェクトでは、次のクエリを実行しようとしています:

クエリの結果、一貫性のないデータ型のエラーが発生します。このエラーに加えて、MS-SQL のように一時テーブルに結果を格納できるかどうかという問題があります。私はOracleデータベースを初めて使用します。1 から 20 までのレコードを格納するための一時テーブルが必要です。Row_Number() を使用し、それに応じてプロジェクトでクエリを変更します。

0 投票する
2 に答える
2712 参照

stored-procedures - すぐに「ビューの作成または置換」を実行すると、00900 が返されます。 00000 - 「無効な SQL ステートメント」エラー

私はこのエラーで立ち往生しています。以下のコードの間違いを教えてください。これは、変数の入力を受け取るプロシージャ内に記述されています。ありがとう。

更新: 以下は、私が見ているエラーです。

0 投票する
2 に答える
65 参照

oracle - 実行する必要がある SQL ステートメント文字列を含むテーブル列を操作するにはどうすればよいですか?

ソース表からデータを取得してターゲット表に挿入するPL/SQLプロシージャを作成する必要があります。ソース表には、ITEM1列、ITEM2列、および列がありSRC_CODEます。SRC_CODE列には、SQL Select ステートメントである文字列が含まれていますSELECT KEY FROM SOMETABLE WHERE DAY = V_DAY。したがって、どうにかしてSRC_CODE列内のステートメントを実行しV_DAY、select ステートメント内にその変数を設定する必要があります。結果のKEY値は、ソース テーブルと共に、ITEM1およびITEM2ソース テーブルからテーブルに入りTARGETます。

プロセスに論理的にアプローチすると、ソース テーブルから行を取得SRC_CODEし、コレクションに実行する必要があることがわかります。次に、コレクションからそれぞれを取得し、それをandKEYに結び付けて、 、、およびをターゲット テーブルに挿入します。プログラミングの観点からこれを行う方法がわかりません。ITEM1ITEM2KEYITEMITEM2

以下は、少なくともターゲットにキー値を入力しようとする私の試みですが、無効な識別子エラーが発生したため、役に立ちませんでした。誰かが私が必要とするものを得るためにこれを修正/拡張できるなら、それは大歓迎です:

0 投票する
1 に答える
238 参照

sql - 即時ステートメントの実行

execute immediateステートメントを使用してテーブルにデータを挿入しようとしています。しかし、私はエラーが発生します

誰が何が悪いのか見てもらえますか?

0 投票する
3 に答える
1879 参照

oracle - ORA-00933 を解決する方法: Oracle で SQL コマンドが正しく終了していませんか?

これは、関数に 3 つの入力パラメーターを渡すことによって作成されたパッケージです。

カウントを取得するクエリは次のとおりです

ORA-00933 の取得: Oracle で SQL コマンドが正しく終了していません

パッケージ本体はこちら

0 投票する
3 に答える
1277 参照

oracle - ここで EXECUTE IMMEDIATE が必要なのはなぜですか?

私は SQL Server ユーザーであり、Oracle を使用して行う小さなプロジェクトがあるため、Oracle の特殊性のいくつかを理解しようとしています。次の状況をよりよく理解するには、助けが必要だと思います。

作成する前に一時テーブルが存在するかどうかをテストしたいので、ここに次のコードを用意しました。

正常に動作するので、一度実行した後、IF に else ステートメントを追加しました。

もう一度実行すると、テストテーブルに行が追加されました。

OK、コードの準備ができて機能していたので、一時テーブルを削除してステートメント全体を再度実行しようとしましたが、実行すると次のエラーが発生します。

次に、else ステートメントを次のように変更したところ、再び機能するようになりました。

私の質問は、個別に実行するのに、EXECUTE IMMEDIATE の代わりに単純に挿入を使用できる理由と、BEGIN の直後の SELECT ステートメントが機能するのに、残りのすべてが EXECUTE IMMEDIATE を正しく実行する必要があるように見える理由です。