問題タブ [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で即時実行によって返されたデータを格納および移入する方法は?
私のプロジェクトでは、次のクエリを実行しようとしています:
クエリの結果、一貫性のないデータ型のエラーが発生します。このエラーに加えて、MS-SQL のように一時テーブルに結果を格納できるかどうかという問題があります。私はOracleデータベースを初めて使用します。1 から 20 までのレコードを格納するための一時テーブルが必要です。Row_Number() を使用し、それに応じてプロジェクトでクエリを変更します。
stored-procedures - すぐに「ビューの作成または置換」を実行すると、00900 が返されます。 00000 - 「無効な SQL ステートメント」エラー
私はこのエラーで立ち往生しています。以下のコードの間違いを教えてください。これは、変数の入力を受け取るプロシージャ内に記述されています。ありがとう。
更新: 以下は、私が見ているエラーです。
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
に結び付けて、 、、およびをターゲット テーブルに挿入します。プログラミングの観点からこれを行う方法がわかりません。ITEM1
ITEM2
KEY
ITEM
ITEM2
以下は、少なくともターゲットにキー値を入力しようとする私の試みですが、無効な識別子エラーが発生したため、役に立ちませんでした。誰かが私が必要とするものを得るためにこれを修正/拡張できるなら、それは大歓迎です:
sql - 即時ステートメントの実行
execute immediate
ステートメントを使用してテーブルにデータを挿入しようとしています。しかし、私はエラーが発生します
誰が何が悪いのか見てもらえますか?
oracle - ORA-00933 を解決する方法: Oracle で SQL コマンドが正しく終了していませんか?
これは、関数に 3 つの入力パラメーターを渡すことによって作成されたパッケージです。
カウントを取得するクエリは次のとおりです
ORA-00933 の取得: Oracle で SQL コマンドが正しく終了していません
パッケージ本体はこちら
oracle - ここで EXECUTE IMMEDIATE が必要なのはなぜですか?
私は SQL Server ユーザーであり、Oracle を使用して行う小さなプロジェクトがあるため、Oracle の特殊性のいくつかを理解しようとしています。次の状況をよりよく理解するには、助けが必要だと思います。
作成する前に一時テーブルが存在するかどうかをテストしたいので、ここに次のコードを用意しました。
正常に動作するので、一度実行した後、IF に else ステートメントを追加しました。
もう一度実行すると、テストテーブルに行が追加されました。
OK、コードの準備ができて機能していたので、一時テーブルを削除してステートメント全体を再度実行しようとしましたが、実行すると次のエラーが発生します。
次に、else ステートメントを次のように変更したところ、再び機能するようになりました。
私の質問は、個別に実行するのに、EXECUTE IMMEDIATE の代わりに単純に挿入を使用できる理由と、BEGIN の直後の SELECT ステートメントが機能するのに、残りのすべてが EXECUTE IMMEDIATE を正しく実行する必要があるように見える理由です。