問題タブ [bulk-collect]

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 投票する
1 に答える
2062 参照

oracle - データを挿入するOracle一括収集スクリプト

次のスクリプトがあります

しかし、それは認識しないと不平を言いl_cursor(INDX).col1ます。ここで何が間違っていますか?

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

sql - Oracleでの一括収集に相当するSQLServer

次のコードをSQLServerで複製したいと思います。私は周りを見回しましたが、唯一の選択肢はまっすぐなカーソルを使用することであるように見えますが、より良い方法があります:

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

oracle - 同じネストされたテーブルで 2 回一括収集する

2 回目の一括収集の後、データが最初の一括収集を上書きしないようにする方法はありますか。ループで繰り返したくありません。

出力:

  • p_id は E3
  • p_id は E4 です

注: E1 と E2 は部品テーブルにあります。

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

oracle - oracle - 型テーブル コレクションへの複数の挿入

Oracle 11g で次のオブジェクトを作成しました。

そして、myObject の新しいテーブル タイプを作成しました。

ここで、myTable の新しいインスタンスを作成し、いくつかのハードコードされmyTableた行を SQL Plus コマンド ラインに追加して、オブジェクトをmyProcedureパラメーターとして渡したいと思います。

私は次のことを試しました。

select into2 番目のステートメントが最初のステートメントを上書きしますが、どちらの種類が機能しますか。

私の質問は; 複数の行を newTable に追加するにはどうすればよいですか?

よろしくお願いします:)

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

plsql - 1 つの一括収集操作ループ内の 2 つ (またはそれ以上) の DML

Oracle 11g の BULK COLLECT ロジックに問題があります。

ストアド プロシージャの元のロジックは次のとおりです。

しかし、私は機能を使いたいBULK COLLECTです。

私はそのようなことを書きました:

この問題に対するこの良いアプローチはありますか?

実行する DML がさらにある場合はどうすればよいですか?


Ok。私の問題はもっと複雑ですが、それを単純化し、素敵なサンプル コードで充実させたいと考えました。エラーOTHERS処理は、この問題の一部ではありません。多分これはより明確になるでしょう:

これはどう:

BULK COLLECTandFORALLステートメントに変更しますか?

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

oracle - 複数の %rowtype フィールドを持つ Oracle PL/SQL レコード テーブルの使用

一括収集を使用して、%rowtype の複数のフィールドを持つレコードのテーブルを作成するにはどうすればよいですか?

私のコード:

このコードは機能しませんが、次のエラー メッセージがスローされます。

わかりました、オラクルは私が間違ったデータ型を使用していると言い、私は同意します。しかし、それを修正する方法は?

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

sql - テーブルからデータをコピーして別のテーブルにロードする

40列のテーブル「A」があります。'A' の特定の 20 列のデータを、それらの 20 列を持つ別のテーブル 'B' にコピーする必要があります。約 3 ~ 1000 万のレコードがあります。PLSQLでこれを行う最も効率的な方法は何ですか。

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

oracle - Oracle PL/SQL - 条件および内部ビュー内の WHERE および FROM 句への一括コレクションの使用

FROM 句の要素として一括コレクションを使用すると、奇妙な問題が発生します。このコード例を実行すると、実行時に「テーブル名が無効です」というエラーが表示されます。

コレクションをテーブルに置き換えると、すべてうまくいきます。

不足している一括コレクションに関する制限はありますか? FROM 句で匿名ブロックを使用できないのでしょうか? SQL デバッガーでは、l_vol(i) には値がありますが、l_vol(i).FIELD は存在しません。

ありがとう。

PS: 元のコードを貼り付けることができません。

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

plsql - PL/SQL一括コレクション挿入構文

transaction_code同じテーブルの min_cost と max_cost を含むテーブルに新しいものを挿入することを任されています。私がやろうとしているのは、取引コードが 2 の郡から min_cost を取得し、transaction_code が 4 の郡から max_cost を取得することです。

取得しているエラーを、取得している行の横にコメントとして書きました。また、配列をテーブルとして使用してみましたが、うまくいくとは思いませんでしたが、私が試みたことを理解できるようにそのまま残しました(コメントアウトされています)。

正しい方向へのプッシュは大歓迎です、ありがとう。

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

stored-procedures - ダウズ一括更新実行フローのしくみ

あるテーブルから別のテーブルに何十億ものデータをコピーするコードを作成していますが、例外が発生した場合に手順を停止したくありません。だから私は(100%コンパイル可能な構文を入れていない)のようなスクリプトを入れています

この疑似コードに基づいて、2つの質問があります

  1. forall ループでコレクションを削除しています。例外があり、dml_errors ブロックでコレクションから情報を取得することにした場合、そこにコレクション要素がありますか? はいの場合、ログに記録した後にそれらを削除しても安全ですか?
  2. forall を begin-exception-end ブロックに保持しているので、反復し続けますか?