問題タブ [plsqldeveloper]
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 - to_date 関数 pl/sql
たとえば、03-03-1990 の入力でこのコードを実行するたびに、このエラーが表示される理由がわかりません。
sql - ブールデータ型のサイズで、その値を出力しますか?
データ型booleanのサイズを知りたいのですが、 VSIZE()関数を使用しましたが、booleanでは機能せず、 boolean値を出力してテーブルに格納したいと思います。オラクルがブール値を格納する方法を教えてください。ブール変数のデータ型と値を確認する他の方法はありますか。 少なくともブール値のサイズを教えてください
vsize()でブール値を使用したときにこのエラーが発生しました
エラー「式のタイプが間違っています」
oracle - コードでゼロとの連結が正しく行われていませんか?
PL/SQL で数値を逆にしようとしていました。正常に動作していますが、番号に 0 が含まれていると、出力が予期しないものになります。例えば:
plsql - アンパサンド (ホスト変数) の後の DOT(.) & 変数名の一部と見なしますか?
見出しがはっきりしないのは承知しています。これが写真です
私は &a を使用しています。これは $a と見なされます。、出力 &a および &a で。同じ出力を与えています。&a の後に単一の .(DOT) を指定してもエラーが発生しないのに、 &a の後に文字、演算子、またはワイルド文字を配置するとエラーが発生するのはなぜですか。
これがコードです。
出力が来る
plsql - FORループの上限がループで変更されないのはなぜですか?
Forループで上限の値を変更しようとしていますが、ループは最初に定義された上限まで実行されています。
論理ループによると、v_numの値は常にiより1つ進んでいるため、無限になりますが、ループは3回実行されています。説明してください。
これはコードです
plsql - 行のないスキーマからすべてのテーブルを削除しようとしていますか?
行のないスキーマ内のすべてのテーブルを削除しようとしていますが、このコードを実行するとエラーが発生します
stored-procedures - 単純なOracleストアドプロシージャが無効なオブジェクトエラーを取得する
簡単なOracleストアドプロシージャを作成しようとしています。
ただし、PL / SQL Developerのコマンド・ウィンドウで発行execute act.skeleton
してプロシージャを実行しようとすると、次のエラーメッセージが表示されます。
createprocedureステートメントなしでコードを実行しようとしましたが、出力が表示された状態で正常に実行されました。CREATE OR REPLACE PROCEDURE IS
&オプションの両方を試しましCREATE OR REPLACE PROCEDURE AS
たが、それでも同じエラーが発生します。
act.skeleton
これが、プロシージャを実行しようとしたときの認証やプロシージャの可視性、またはオブジェクトが無効になる原因と関係があるかどうかはわかりません。エラーの意味を調べたところ、通常はプロシージャのコンパイルエラーを指しているようですが、プロシージャ宣言なしでコードを実行できるため、宣言部分が原因であると推測されます。私はこれを引き起こしている原因を理解するのに十分なことを知りません、そして私は誰かがそれにもう少し光を当てて私を正しい方向に向けることができることを望んでいました
ありがとう、
Ashish
その他の情報:
oracle - Oracle プロシージャの文字列での関数呼び出しの呼び出し
Oracle 10g を使用してアプリケーションを作成しています。
私は現在この問題に直面しています。型 varchar2 のパラメーターとして「filename」を取り込みます。
filename に含まれるサンプル値は次のとおりです。to_char(sysdate, 'DDD')'.
手順では、このファイル名の値を TEST147 のように取得したいと考えています。私が書くとき:
値 ffilename = TEST || を取得します。to_char(sysdate, 'DDD') は理にかなっています。しかし、どうすればこの問題を回避し、文字列値で関数を呼び出すことができますか?
助けていただければ幸いです。ありがとう。
sql - SQL トリガー エラー:無効な指定
トリガーを作成していて、理解できないエラーを受け取りました。Plsは誰でもそれで私を助けることができます.
sql - PL/SQL文字列操作
単一の文字列であるアドレスを複数の文字列に分割する必要があります。以下は、アドレスを対応するアドレス行に分割するpl/sqlプロシージャの要件です。手順のパラメーターは次のとおりです。
プロシージャsplit_address(varchar2のアドレス、al1 out varchar2、al2 out varchar2、al3 out varchar2、al4 out varchar2)を作成または置換します。
- アドレスはvarchar2(250)であり、それぞれvarchar2(100)の4行al1、al2、al3、al4に分割する必要があります。
- アドレスに改行文字CHR(10)が含まれています。そして、これらに基づいて分割を行う必要があります。
- アドレスの長さが100以下の場合、アドレス全体を3番目のアドレス行al3に入れる必要があります。
- アドレス長が100を超える場合にのみ、分割を実行する必要があります。
- 1行が100文字を超える場合、その行は50番目の位置の中央または近くで区切り文字'、'によって2つに分割され、残りの行は2番目のアドレス行に追加されます。
- 行数が4を超える場合は、各セグメントを1つのアドレス行にマージして、最大4セグメントまで100文字にします。
- アドレス行3は必須の出力です。
例を挙げましょう。アドレスを
'ドア#nnxxxxxxxxxxXXXXXXXXXXX
yyyy
YYYYYYYYY
Zip
-NNNNNN
zzzzzzzzzzzzzzz
ZZZZZZZZZZZZZZZZZZZZ
'
この全長が100未満の場合は、分割せずに直接al3に入れる必要があります。アドレスの長さが100を超える場合、問題が発生します。このアドレスは8行ありますが、次のように4行にする必要があります。
- 'ドア#nnxxxxxxxxxxXXXXXXXXXXyyyy'->長さ100最大
- 'YYYYYYYYYYY Zip-NNNNNNN、zzzzzzzzzzzz'->長さ100最大
- 'zzzzzzzzzzz、ZZZZZZZZZZZZZZZZZZZZZ'->長さ100最大
- 'ZZZZZZ'->長さ100max
システムはoracle-10gで、その機能を使用できます。問題は単純ですが、ロジックをコードに組み込むのは少し難しいです。ヒントをいくつか教えてください。前もって感謝します。