問題タブ [plsql]
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.
sql - ORACLE SQL:1つのステートメントのCODEに依存する複数のSUMS
これを行う方法はあると思いますが、他の多くの人がそうであるように、私はORACLE10gに精通していません。シナリオは次のとおりです。
現在、クラシックASPページをASP.net2.0に変換しています。レポートを作成しているクエリがあります。売上高と以前の売上高を報告しています。現在起こっていることは、1つのクエリがデータベースに送信され、当社の製品を販売している場所の完全なリストを取得することです。次に、場所のすべての行をループし、SQLでいくつかの合計操作を実行します。
他のいくつかのテーブルに送信され、販売数量を合計してから、合計をテーブル行に追加します。ロケーションクエリは多くの結果を返すため、クエリには2〜3分かかります。
私の質問は、これらすべてを1つのクエリに統合するにはどうすればよいかということです。
場所のクエリ:
上記のクエリの各行の合計クエリは次のとおりです。
元のクエリの各レコードをループする代わりに、クエリを組み合わせて、ロケーションのクエリにSUMを含める方法はありますか。ここで重要なのは、t.code ='C'ではなく'C'&'S'の場合にのみ、2番目のクエリが売上合計を取得することです。
oracle - PL/SQLプロシージャの名前を調べる
Oracle の PL/SQL プロシージャは、それ自体の名前を認識できますか?
説明させてください:
実行後%%something%%
、変数v_procedure_name
には「SOME_PROCEDURE」が含まれている必要があります。object_id
その手順が含まれていてもOKなので、 で名前を調べることができますall_objects
。
oracle - オラクルのデフォルト値
Oracle の PL/SQL 関数のデフォルト値について簡単な質問があります。このプログラムを例に取ります。
ここでの考え方は、この関数が呼び出されたときに varNumber に値が指定されていない場合、値 0 を取るということです。
さて、私の問題は、値を持たないパラメーターの値として常に NULL を渡す Web サービスレイヤーから関数が呼び出されることです。Oracle は NULL を値として解釈するため、varNumber をデフォルトの 0 に初期化しません。
このアプローチが理にかなっている理由はわかりますが、この動作をオーバーライドし、NULL 値が渡された場合に、Oracle が明示的な DEFAULT 値を割り当て、関数ヘッダー?
手動チェックを行うオプションを検討しました...
ただし、これが問題になる可能性のある関数は何百もありますが、関数ごとのパラメーターの数が多いことは気にしないでください。そのため、問題に対するより一般的な解決策を見つけることができれば幸いです。
あなたが与えることができる洞察に乾杯.
oracle - オラクルの例外を使用
以下のコードで発生する可能性のあるエラーを処理するために、Oracle の例外を使用したいと考えています。ユーザーがデータベースに存在しない書籍 ID や従業員 ID を提供すると、NO_DATA_FOUND 例外が発生します。したがって、どのステートメントでこの例外が発生するかをどのように知ることができますか。
提案やガイダンスに感謝します。ありがとうございました。
plsql - DBMS_CRYPTO を使用してデータを暗号化する
現在、Oracle 10g を使用しています。DBMS_CRYPTO パッケージを使用して、ログイン用のユーザーのパスワードを暗号化します。データを暗号化または復号化するには、キーが必要です。では、他の開発者からキーを隠すためにキーをどこに置く必要がありますか、または復号化できずにデータを暗号化する別の方法はありますか?
SQL Server では、PWDENCRYPT 関数を使用して暗号化するだけで、ユーザーが入力したデータが正しいかどうかを比較する場合は、PWDCOMPARE を使用します。アドバイスをお願いします。ありがとうございました。
oracle - Oracle-パッケージの使用
PL SQLプログラミングの本をいくつか読んだことがありますが、プロシージャ、関数、カーソルなどをパッケージにグループ化することをお勧めします。パッケージは、オブジェクト指向設計であるモジュール性と情報隠蔽を提供します。ただし、私はスタンドアロンの手順に精通しています。誰かが親切にコードのいくつかの例とクライアントからパッケージを呼び出す方法を提供しますか?現在、クライアントアプリケーションのデータアクセスとしてODP.NETを使用しています。ありがとうございました。
sql - Oracle でストアド プロシージャが最後に変更またはコンパイルされた日時を確認するにはどうすればよいですか?
これを実現するための SQL クエリを探しているのが望ましいのですが、他のオプションも役立つ場合があります。
sql - ストアド プロシージャの依存関係をプログラムでどのように識別しますか?
PL/SQL クエリを記述して、ストアド プロシージャの依存関係の完全なリストを特定することはできますか? 私は他のストアド プロシージャを特定することにのみ関心があり、ネストの深さも制限したくありません。たとえば、A が B を呼び出し、B が C を呼び出し、C が D を呼び出す場合、B、C、および D を A の依存関係として報告する必要があります。
oracle - SELECT COUNT(*)と明示カーソルを使用した2回のフェッチ
Steven Feuerstein&BillPribylによる「OraclePLSQLProgramming」(第2版)というタイトルの本を読みました。99ページに、
「ヒット」の総数を本当に知る必要がない限り、テーブルから「SELECTCOUNT(*)」を実行しないでください。一致するものが複数あるかどうかだけを知る必要がある場合は、明示カーソルを使用して2回フェッチするだけです。
例を挙げて、この点をもっと説明してもらえますか?ありがとうございました。
アップデート:
StevenFeuersteinとBillPribylは、テーブル内のレコードが存在するかどうかを確認するためにSELECT COUNT()を使用しないことを推奨していますが、代わりに明示カーソルを使用してSELECT COUNT(*)を使用しないようにするために、以下のコードを編集するのを手伝ってくれる人はいますか?このコードは、Oracleストアドプロシージャで記述されています。
テーブルemp(emp_id、emp_name、...)があるので、提供された従業員IDコレットを確認するかどうか:
html - Oracle から Excel - PL/SQL エクスポート手順
Oracle から Excel にデータをエクスポートする pl/sql プロシージャを作成しています。データの書式設定が必要なため、CSV を使用できません。私はすでに XML を試しましたが、50 列で 70000 行 (ほぼ 300 MB !!!) などをエクスポートしようとすると、大きすぎるファイルが生成されます。
そのため、HTML タグを使用して XLS ファイルを生成することにしました。これは XML よりも小さく、いくつかの特別な列のみの形式を直接定義する必要があります (文字列、数値、および日付は Excel によって自動的に形式設定されます)。とてもシンプルで便利ですが、複数のワークシートを定義することはできません。
HTML を使用して記述された Excel ファイルに複数のワークシートを追加/定義する方法を知っていますか? <% ActiveWorkbook.Worksheet.Add %> のような VBScript 式を使用しようとしましたが、うまくいきません。