sql >> データベース >  >> RDS >> Oracle

SQLclで構文の強調表示を構成する方法

    SQLclバージョン21.2以降、構文を強調表示するためにSQLclを構成できるようになりました。

    つまり、SQLclで記述したコードは、適用する構文強調表示ルールに基づいて色分けすることができます。

    デフォルト(構文の強調表示オフ)

    構文を強調表示せずにターミナルで作成したクエリは次のとおりです。

    したがって、色分けは行われていません。これは、ターミナルの設定で構成した色を使用します。これは、基本的には黒の背景に白のテキストでした。

    構文の強調表示を有効にする

    次の行で構文の強調表示を有効にできます:

    set highlighting on

    これにより、基本レベルの構文の強調表示が提供されます。

    同じクエリが現在どのように表示されるかを次に示します。

    基本的に、SQLキーワードはシアンで強調表示されますが、それ以外は強調表示されません。

    カラーコーディングを追加

    幸い、色分けを追加することができます。

    例:

    set highlighting identifier foreground magenta

    これにより、すべての識別子が前景色のマゼンタで色付けされます:

    設定をlogin.sqlに保存します ファイル

    構文の強調表示設定をlogin.sqlに保存できます ファイル。

    これにより、SQLclを使用して接続するたびにこれらの設定を構成する必要がなくなります。これは、login.sqlが次のように構成できるためです。 SQLclを使用して接続するたびにファイルが実行されます。

    これがlogin.sqlの例です 構文強調表示コマンドを含むファイル:

    set sqlformat ansiconsole
    
    set highlighting on
    set highlighting keyword foreground blue
    set highlighting identifier foreground magenta
    set highlighting string foreground green
    set highlighting number foreground cyan
    set highlighting comment foreground yellow

    ここで、私の最初の行は構文の書式設定とは関係ありません。sqlformatを設定するだけです。 ansiconsoleへ 。

    残りの行は、構文の強調表示を有効にし、使用する色を指定します。

    login.sqlに構文の強調表示を追加したら ファイルを作成し、SQLclを終了して、再接続します。再接続すると、login.sqlが実行されます ファイルを作成すると、これらのコマンドがすべて有効になります。

    上記のコマンドをlogin.sqlに追加しました ファイル、これが私のクエリが今どのように見えるかです(SQLclを終了して再接続した後):

    たぶん私はキーワードをシアンのままにしておくべきでしたか?

    その他の構文強調表示オプション

    背景色を設定したり、太字のフラグを設定したりする機能など、他のオプションもあります。

    これらを見つける最良の方法は、次のコマンドを実行することです。

    help set highlighting

    この記事の執筆時点で私に返されるのは次のとおりです。

    set highlighting <flag>
                    | <type> RESET
                    | <type> FOREGROUND <color>
                    | <type> BACKGROUND <color>
                    | <type> BOLD <flag>
                    | <type> ULINE <flag>
                    | <type> INVERSE <flag>
    
    	<type>  = DEFAULT | COMMENT | STRING | NUMBER | PUNCTUATION
               | KEYWORD | IDENTIFIER
    	<color> = RED | BLUE | BLACK | CYAN | GREEN | MAGENTA | WHITE
               | YELLOW
    	<flag>  = ON | OFF | RESET
    
    EXAMPLES
    	set highlighting on

    色のリストは(少なくとも執筆時点では)非常に小さいですが、それでも適切な構文の強調表示を提供するには十分です。

    構文の強調表示が新機能であることを考えると、上記のヘルプオプションは変更され、将来拡張される可能性があります。


    1. OracleODP.NETバージョンに依存しない代替

    2. COPYはどのように機能し、なぜINSERTよりもはるかに高速なのですか?

    3. SQL CURSORを使用するときに、これらの間違いを犯しますか?

    4. SQLでのピボット演算子の理解