• ベストアンサー

オラクル(PL/SQL)のエラー

いつもお世話になります。 オラクル・バージョン8.1.5を使用しています。 PL/SQLを実行すると以下のエラーが発生します。色々調べたのですが、解決しません。 なぜでしょうか?(ロジックがここでは書けないので、エラーのみ記載致します) ORA-06550:行1、列19:*PLS-00103: Encountered the symbol "." when expecting one of the following・・()-+mod この後ろは読めませんでした。 また、PL/SQLを実行したりするには、ただ単にオラクルをインストールしただけでは駄目なのでしょうか? よろしくお願い致します。

noname#11049
noname#11049

質問者が選んだベストアンサー

  • ベストアンサー
  • msmiyabin
  • ベストアンサー率20% (11/55)
回答No.2

ORA-06550のエラーは次のような意味です。 原因: PL/SQL コンパイル・エラーが発生しました。行と列に対して示された数値はPL/SQL ブロック内においてエラーの発生した位置です。 処置処置処置処置: エラーについての情報は、次の PL/SQL メッセージを参照してください。 というわけで、読めない部分に詳しい原因が書いてある可能性があります。 その場合のエラーコードはORA-09551~の番号が振られているはずです。 下の方が書いておられるように、行1列19の"."が何らかのエラー原因だと思います。 エラーコード一覧などのマニュアルは以下の参考URLのORACLE JAPANから無料ユーザ登録をするとダウンロードできます。

参考URL:
http://otn.oracle.co.jp/document/index.html
noname#11049
質問者

お礼

お蔭様で上手く行きました。 適切なアドバイスありがとうございました。

その他の回答 (1)

回答No.1

こんにちは、 まず、エラーについてですが、流したPL/SQL文の エラー個所と思われる部分の行1、列19と その周辺のロジックだけでも乗せていただけないと なんともいえませんが、やはりPL/SQL文の誤りだと 思います。 PL/SQLはOracleのインストールだけでも実行できると思いますよ。 では。

noname#11049
質問者

お礼

お蔭様で上手く行きました。 適切なアドバイスありがとうございました。

関連するQ&A

  • PL/SQLのエラーについて

    こんばんは。PL/SQLのエラーについて質問させて頂きます。 現在、Oracle8.1.7のデータベースを使用したオラクルのE-business Suiteという人事系システムで開発をしています。 そこで、SQL*Plusを使用してPL/SQLのパッケージをコンパイルしたところ、パッケージ仕様部も本体部もコンパイルのエラーは出なかったのですが、E-business SuiteにPL/SQLを設定し、動作させようとしたら、下記のようなエラーが発生しました。 -------------------------------------------------------------------- FDPSTP 内のOracleエラー 6550 原因: ORA-06550: 行 1、列 7: PLS-00221: 'ZT_TYOUHYOU_HENSEI_PKG'がプロシージャではないか、または未定義です。 ORA-06550: 行 1、列 7: PL/SQL: Statement ignored が原因で FDPSTP に失敗しました。 --------------------------------------------------------------------- また、作成したPL/SQLパッケージの仕様部は下記のとおりです。 -------------------------------------------------------------------- CREATE OR REPLACE PACKAGE APPS.ZT_TYOUHYOU_HENSEI_PKG AS FUNCTION get_henseihyo_kbn (i_grade IN VARCHAR2,o_hensei_kbn OUT VARCHAR2) RETURN NUMBER; <・・・・・中間部分は省略・・・・・> PROCEDURE main_shori (p_process_date IN VARCHAR2, p_location IN VARCHAR2); END ZT_TYOUHYOU_HENSEI_PKG; -------------------------------------------------------------------- 原因だと思われる心当たりの部分も探してみたのですが、このエラーの意味は何なのか、原因はどこにあるのか分かりません。 どなたかお判りの方、御回答よろしくお願い致します。

  • oracleのPL/SQLのEXIT戻りでエラーが

    PL/SQLを実行したのですが、EXITの終了でエラーがとなってしまいます。エラーがでます。 being~endを書いてしてPL/SQLを実行しているのですが、 being~endのPL/SQLでエラーとなった場合、EXITの終了時の戻りで以下のエラーがでます。 エラーとならないようにするにはどうしたらよいでしょうか。 SP2-0670: 内部数値変換が失敗しました。 使用方法: { EXIT | QUIT } [ SUCCESS | FAILURE | WARNING | n | 変数 | :バインド変数 ] [ COMMIT | ROLLBACK ] 実行したSQLは以下となります。 set serveroutput on exec utl_file.fremove('DATA_PUMP_DIR','hogehoge.txt'); VARIABLE rtn NUMBER DECLARE BEGIN :rtn := 0; select count(*) from d; EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE(SQLCODE||','||SQLERRM); :rtn := 16; END; / EXIT :rtn →ここでエラーがでる oracleは19cです。 よろしくお願いします。

  • SQLのSP2-エラーについて

    SQLの実行に失敗した際に出力される「SP2-」で始まるエラーは何があるか調べています。「ORA-」や「PLS-」のようにエラーメッセージ集のようなドキュメントはないのでしょうか。OTNで探したのですが見つかりませんでした。

  • PL/SQLでPLS-00201のエラー

    初めて質問させていただきます。 よろしくお願いいたします。 Oracle 9i から 11g へバージョンアップしました。 9iでは動いていたPL/SQLコマンドが11gでは 以下のようなエラーが大量に発生します A_FLG Aシノニム名.列名%type ,      * 行16でエラーが発生しました ORA-00201:行16、列13: PLS-00201:識別子(シノニム名).(列名)を宣言してください。 PROCEDURE D_FLG_UPD ( a in varchar2 ) is type D_TYPE is record ( J シノニム名.列名.列名%type ,    ここでエラー   → A_FLG Aシノニム名.列名%type , B_FLG Bシノニム名.列名%type , C_FLG Cシノニム名.列名%type ); G H; begin これはどういった場合に発生するエラーなのでしょうか? またOracleのバージョンによってPL/SQLのコマンドが動かなくなったりすることは よくあることなのでしょうか? よろしくお願いいたします。

  • PL/SQLでのSQL文法

    こんにちは。教えてください。 PL/SQLを使うのが初めで戸惑っています。 まず、PROCEDUREで =========================== BEGIN SELECT NAME FROM TABLE1 WHERE NAME='tanaka'; END; / =========================== このように書いて実行させようとすると、「コンパイルエラー」 「INTO句はこのSELECT文に入ります」というエラーが出ます。 SQLの文法的には間違ってないと思うのですが、INTO句とはこれいかに?? ネットでPL/SQLで検索かけて調べたのですがあまりにも初歩すぎて わかりませんでした。 PL/SQLやORACLEのメーリングリストでお勧めがありましたら教えてください。 よろしくお願いいたします。

  • OracleのPL/SQLの操作方法

    超初心者です。 OracleでのPL/SQLを実行したいのですが、まずどのアプリケーションを起動すればよろしいのでしょうか。 また私のような初心者にでも分かりやすい、参考になるサイト等をご教授していただきたいのですが。

  • PL/SQL PLS-00103エラーについて

    PL/SQL PLS-00103エラーについて 夜分遅くに申し訳ございません。 PL/SQLのコーディングを実施し、コンパイル中にPLS-00103エラーが発生してしまったのですが、 対処方法がわからず困ってしまいました。 ・メッセージ内容:”PLS-00103: 記号"="が見つかりました。” 上記メッセージで指定されていたソース内容(イメージ)↓ -------------------------------------------------------------- ・ ・ BEGIN LV_STEP := '**登録処理開始'  -- 左記の:=の=部分がエラーメッセージで指定されていました。(LV_STEPはログ出力用の変数) CURSOR AAAA IS SELECT GG.EPLY_NO GG_EPLY_NO ,GG.R_CD GG_R_CD ,GG.S_CARD GG_S_CARD ・     ・    ・ FROM GRA_GRA_TR GG ・ ・ ・ ------------------------------------------------------------------ といった感じなのですが、 このPLS-00103エラーの対処方法をどなたかご教示いただけませんでしょうか。 よろしくお願いいたします。

  • SQL実行エラー

    VBでオラクルを使ったアプリケーションをテストしているのですが、 次のようなエラーが出てとまってしまいます。 SQL実行エラー ORA-01801  日付形式が内部バッファに対して長すぎます。 原因はいったい何なのでしょうか? 知っている方がいらしたら教えてください。 宜しくお願いいたします。

  • PL/SQLの変数について

    困っています。 ホスト引数で :NAME = "あいうえお" としてoracleに渡し、 PL/SQLでNAMEという変数で受け取った後、 Xという変数にその"あいうえお"を'あいうえお' のように、シングルクォーテーションで囲んで入れたいのです。 ですが、 NAME = 'X' としたら文字列として認識してしまい、 NAME = ''X'' としたらPLS-00103のエラーが出てしまいます。 シングルクォーテーションで囲んだ文字列を変数にセットする場合はどのように書いたら宜しいのでしょうか??

  • oracleのPL/SQLでEXECのエラーの確認

    EXECUTEコマンドのエラーの確認につてい教えてください。 EXECUTEコマンドでutl_fileパッケージをL/SQLを実行しているのですが、 そこで、EXECUTEコマンドのエラー判定をしたいのです。 EXECUTEの実行エラーを取得し判定したい。 エラー判定はできますか。 できるとした場合、エラー時はその時点で終了したい。 どのような書き方になるのですか。 実行したSQLは以下となります。 set serveroutput on exec utl_file.fremove('DATA_PUMP_DIR','hogehoge.txt'); →ここでエアー取得と判定がしたい VARIABLE rtn NUMBER DECLARE BEGIN :rtn := 0; select count(*) from d; EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE(SQLCODE||','||SQLERRM); :rtn := 16; END; / EXIT :rtn oracleは19cです。 よろしくお願いします。