A5:SQL Mk-2

開発のこと、日々のこと

oracle の 置換変数(define)

ホーム フォーラム A5:SQL Mk-2掲示板 oracle の 置換変数(define)

4件の投稿を表示中 - 1 - 4件目 (全4件中)
  • 投稿者
    投稿
  • #4042 返信
    ひろ
    ゲスト

    便利に使わせて頂いております。

    oracle の 置換変数(define)を使う方法があれば教えてください。

    define x=123;
    select &x from dual;

    のように変数を定義してSQLを実行したいのです。

    お手数ですが、よきアドバイスがあればお願いいたします。

    #4055 返信
    松原正和
    キーマスター

    ひろさんこんにちは。
     
    この define の機能ですが、Oracle の機能(SQL構文)ではなく、SQL*PLUSの機能となるため、A5:SQL Mk-2では使用できません。
     
    代替として、パラメータ機能を使うか replace ディレクティブ(疑似命令)を使うようにしてください。
     
    – パラメータ機能の例(Ctrl+Shift+P で表示されるパラメータダイアログでもパラメータを設定できます。)
    –* SetParameter x 123
    select &x from dual;
     
    — replace ディレクティブの例(SQLの文字列置換を行います)
    –* replace ‘&x’ ‘123’
    select &x from dual;

    • この返信は5年、 1ヶ月前に松原正和が編集しました。
    #4061 返信
    ひろ
    ゲスト

    早々にご回答ありがとうございます。

    –* SetParameter x 123
    select &x from dual;

    を実行すると、

    ORA-00911:文字が無効です。

    何が不足していますでしょうか?

    #4091 返信
    松原正和
    キーマスター

    すみません、掲示板の仕様で、 コメントを表す ハイフン2つが、「–」に置き換わってしまったようです。あと、SQLにも誤りがありました。
     
    --* SetParameter x 123
    select :x from dual;
     
     です。「--*」は、半角に変換してください。また、「:x」も半角に変換してください。

    • この返信は5年、 1ヶ月前に松原正和が編集しました。
4件の投稿を表示中 - 1 - 4件目 (全4件中)
返信先: oracle の 置換変数(define)で#4055に返信
あなたの情報:




コメントは受け付けていません。