DataGripはコンテキストとスキーマの制約に基づいたコード補完機能を提供し、SQLのコーディングを高速化します。 最も重要なコード補完機能を見てみましょう。
テーブルが外部キーと関連付けされている場合、IDEはJOIN
ステートメント全体を補完できます。
INSERT
ステートメントを書く際、すべてのフィールドを列挙すると非常に手間がかかります。 DataGripの補完機能は、リストを自動的に作成し、あなたの負担を和らげます。
キャメルケース
表記の名前やハイフンで結ばれた名前を使用したオブジェクト
がある場合は、単語の最初の1文字を入力するだけで(必要なのはこれだけです)、残りの文字列を補完できます。
Alt+を使ったヒッピー(この名前の由来は誰にも分かりません)補完では、入力文字列を開いているファイル内の単語にマッチさせ、循環的に単語を補完します。
補完時に確実にオブジェクトを修飾できる機能は、設定 → エディタ → スマートキーで設定できます。 Never(絶対しない)、Always(常に)およびOn collisions(衝突時に)の3つのオプションがあります。ここで、これらの動作をご説明いたします。 例えば、makila
とpublic
の2つのスキーマがあり、テーブルactor
が両方のスキーマにあり、テーブルactor_1
がpublic
にのみ存在すると仮定します。 以下にQualify on collisionsの例を示します。
これは多言語を操る方向けの機能です。入力言語を切り替え忘れてしまった場合でも、DataGripは 入力された内容を理解します。
この種の補完機能は、IntelliJベースの他のIDEをお使いになったことのある方にはおなじみかもしれません。 この機能は、コードのロジックを実際とは逆の方法で書く際に特に役立ちます。 例えば、table_name.afrom
と入力すると、テーブルのカラム名すべてがリスト表示されます。 あるいは、identifier.cast
と入力すると、キャスト用のコードが生成されます。 こちらのアニメーションで全動作をご確認ください。
クエリコンソールにCREATE
句やALTER
句を含むDDLステートメントが含まれている場合、コード補完は当該DDLで行われた変更を認識します。
DataGripではオブジェクトのエイリアスを追加できます。 この補完は自動で行われないため、Ctrl+Spaceで呼び出してください。