DataGrip 2022.2 がリリースされました! 2022 年で 2 回目となるメジャーアップデートでは、さまざまな機能改善が行われています。 では、その内容を見てみましょう!
複数の CSV ファイルを選択してまとめてインポートする機能を実装することで、ファイルのインポート処理を強化しました!
DataGrip は SQL スクリプトのデータオブジェクトを解決するため、オブジェクトの意味を理解する必要があります。 これは、IDE がコードを正しく補完し、オブジェクトの使用箇所をリンクとして処理するために必要です。
一般的に、解決コンテキストは実行中のコンテキストに一致する必要がありますが、DataGrip が簡単に処理できるタスクではありません。 このため、最近までは解決に関する問題が複数存在していました。 発生する問題としては次のようなものがあります:
これらの問題は、DataGrip が各コンソールまたはローカルファイルに対して右上のドロップダウンメニューで選択されたコンテキストとデフォルトのデータベースまたはスキーム(または SQL Resolution scopes(SQL 解決スコープ)設定の入力)の両方を用いてオブジェクトを解決していたことが原因で発生していました。
これは、コンテキストを切り替える USE
または SET SEARCH PATH
ステートメントを含むスクリプトを操作している場合には問題ではありませんでしたが、 IDE はファイルの先頭では解決先を知っておく必要もあります。 そのため、デフォルトのデータベースまたはスキーマ(または SQL Resolution scopes(SQL の解決スコープ)設定の入力フォーム)をファイルの先頭に最適なコンテキストとして処理していました。
言い換えると、ファイルに USE
または SET SEARCH PATH
ステートメントが存在しない場合、DataGrip はファイルの先頭箇所をコンテキスト外の情報により解決すべきではありません。 この状況を解決するため、Playground(プレイグラウンド)と Script(スクリプト)という 2 つの解決モードを導入することで、DataGrip にどちらのアプローチに従うべきかを伝える手段を作りました。
Playground(プレイグラウンド)モードでは、DataGrip はすべてのオブジェクトをそのコンテキスト、つまりスキーマ選択ツール、解決スコープ、またはデフォルトデータベースの値を用いて解決します。 ファイルが他とは関連性がなく、相互に独立した特定の順序が適用されないクエリ一式である場合に最適です。 クエリコンソールでは、Playground(プレイグラウンド)モードがデフォルトに設定されています。
Script(スクリプト)モードでは、ファイルの先頭では指定されたコンテキストにより解決されますが、スクリプトに USE
ステートメントが使用されている場合、それらはスクリプトの順次ロジックの一部であるため、解決のためにコンテキストが変更されます。 これは、クエリに順次ロジックがあり、単一のスクリプトとして実行する必要がある場合に適した選択肢です。 ローカルファイルでは、Script(スクリプト)モードがデフォルトに設定されています。
モードは簡単に切り替えられます。 スクリーンショットにあるように、ツールバーのドロップダウンメニューを使用してください。
新しい Modify(変更)UI がデフォルトのオプションになりました。この UI の基本バージョンは、2022.1 リリースで導入されていました。 DataGrip 2022.2 からは、この新しい UI を使用してテーブルのすべての子オブジェクトの追加と編集を行えます。
このリリースサイクルでは、コンテキストメニューから以前の UI をそのまま使用することができます。
照合順序と文字セットがテーブルの DDL を使用して生成されるようになりました。
従来、データベースの機能に関連するすべてのアクションは、キーマップ内の 4 箇所に格納されていました。 この構造は過去の IDE 開発によって生まれたものであり、それ自体はあまり合理的ではありませんでした。
使用可能なすべてのアクションを見つけやすくするため、この構造を再編成し、Database の親グループの下にすべてのアクションをグループ化しました。
DDL データソースのソースとして、ファイルスコープを設定できるようになりました。 これにより、DDL データソースのフォルダーを簡単にフィルターすることができます。 たとえば、サブフォルダーを除外できます。
macOS ユーザー向けに、開いているすべてのプロジェクトウィンドウを単一のウィンドウ内のタブに変換してマージする機能が導入されました。 このアクションは、Window(ウィンドウ) メニューから使用できます。
Oracle および Vertica データベースで、パスワードの期限切れが迫っていることを知らせる警告が表示されるようになりました。 Test Connection(接続のテスト)が有効になると、DataGrip がこの情報を取得して表示します。
新たに DuckDB、Mimer SQL、および Apache Ignite の 3 つのデータベースを基本サポートの対象に追加しました。
SET ROWCOUNT
が Azure クエリの前に実行されるようになり、ページサイズを制限できるようになりました。 MODIFY ORDER BY
が ALTER TABLE
でサポートされました。 CHANGETABLE
がサポートされるようになりました。 END CONVERSATION
がサポートされるようになりました。 PRAGMA_TABLE_INFO
および PRAGMA_TABLE_XINFO
テーブルが正しく解決されるようになりました。 CTE
を INSERT INTO
と使用する際に、列が正しく解決されるようになりました。