SQL ダイアレクト
このページでは、さまざまなスコープで使用される SQL ダイアレクト(SQL の DBMS 固有のバージョン)を指定できます。
ファイル、プロジェクト、グローバルは、単一のファイル、プロジェクトにアタッチされた SQL ファイルを含むフォルダー、IDE で開かれるすべての SQL ファイルのスコープに適用されるダイアレクトを定義するスコープです。ダイアレクトを設定しない場合、汎用ダイアレクトが適用されます。この場合、いくつかのダイアレクト固有の機能は使用できません: ダイアレクトに固有のインスペクション、ダイアレクトにコード補完。また、IDE で新しいファイルを開くたびに、適切なデータソースを指定する必要があります。
プロジェクトスコープはグローバルスコープをオーバーライドします。つまり、グローバルダイアレクトを MySQL に設定し、プロジェクトダイアレクトを MariaDB に設定すると、プロジェクトのスコープ外のすべてのファイルが自動的に MySQL コーディング支援を受けることになります。
全体として、単一の DBMS (PostgreSQL など) を使用し、この DBMS に固有のコーディング支援を有効にしたい場合は、グローバル言語を指定すると便利です。それ以外の場合、PostgreSQL と Oracle を使用する 2 つのプロジェクトがある場合は、プロジェクトごとにプロジェクト言語を指定することをお勧めします。
コードエディターで SQL ダイアレクトを変更する
編集領域を右クリックし、ダイアレクト (<current_dialect>) をを選択します。SQL ダイアレクトの変更ウィンドウでダイアレクトを選択します。
構文エラーのハイライトを無効にする
入力ペインの編集領域を右クリックし、ダイアレクトの変更を選択して、汎用 SQL を選択します。汎用 SQL ダイアレクトは、SQL キーワード、テーブル名、列名の補完とハイライトをサポートします。構文エラーのハイライトが無効になっています。つまり、クエリコンソールのすべてのステートメントが構文的に正しいものとして表示されます)。
サポートされている SQL ダイアレクト
DataGrip は次の SQL ダイアレクトをサポートしています。
Amazon Redshift
Apache Cassandra
Apache Derby
Apache Hive
Apache Spark
Azure SQL Database
BigQuery
ClickHouse
CockroachDB
Couchbase Query
DynamoDB
Exasol
汎用 SQL
Greenplum
H2
HSQLDB
IBM Db2 i シリーズ
IBM Db2 LUW
IBM DB2 の新機能
MariaDB
Microsoft SQL Server
MongoDB
MySQL
Oracle
Oracle SQL*Plus
PostgreSQL
Redis
Snowflake
SQLite
SQL2016
Sybase ASE
Vertica
ダイアレクトの設定
![SQL ダイアレクトの設定ダイアログ the SQL Dialects settings dialog](https://resources.jetbrains.com/help/img/idea/2024.2/db_settings_database_sql_dialects.png)
項目 | 説明 |
---|---|
グローバル SQL ダイアレクト | コンピューター上のすべての .sql および .ddl ファイルの SQL 言語。ダイアレクトは、プロジェクトレベルや個々のファイルやディレクトリなど、より狭い範囲で再定義される場合があります。 |
プロジェクト SQL ダイアレクト | 現在のプロジェクトのすべての .sql および .ddl ファイルの SQL ダイアレクト。<なし> が指定されると、グローバル SQL ダイアレクトが継承されます。 |
パス /SQL ダイアレクト | 個々のファイルおよびディレクトリの SQL ダイアレクト – グローバルまたはプロジェクトのダイアレクトと異なる場合。 このセクションで何も指定しない場合、プロジェクト内のすべての .sql および .ddl はプロジェクトのダイアレクトを継承し、プロジェクト外のすべてのファイルはグローバルダイアレクトを継承します。 ファイルまたはディレクトリのダイアレクトを指定するには、 明示的に指定されたダイアレクトは黒で表示されます。継承されたダイアレクト(ダイアログを閉じない限り)は、イタリックのグレーで表示されます。 |
ダイアレクトオプション
特定のダイアレクトに加えて、ダイアレクトを指定するときは、以下を選択できます。
<なし> または <クリア>。その結果、上位レベルのダイアレクトが継承されます。
汎用 SQL。汎用 SQL ダイアレクトは、SQL キーワード、テーブル名、列名の補完とハイライトをサポートします。構文エラーのハイライトが無効になっています。つまり、クエリコンソールのすべてのステートメントが構文的に正しいものとして表示されます)。
サンプル
コンピューター上の SQL スクリプトファイルのほとんどは PostgreSQL 用です。現在のプロジェクトでは、Oracle 用のスクリプトを開発していますが、プロジェクト内のディレクトリの 1 つに MySQL 用のスクリプトがあります。このような状況では、次のように指定します。
グローバル SQL ダイアレクト : PostgreSQL
プロジェクト SQL ダイアレクト : Oracle
<PathToMySQLScriptsFolder>
: MySQL
関連ページ:
![](https://resources.jetbrains.com/help/img/idea/2024.2/db_settings_database_csv_formats.png)
CSV 形式
このダイアログには、テーブルデータを区切り文字で区切られた値形式 (CSV、TSV など) に変換したり、その逆に変換したりするための設定が含まれています。残りのデータが読み込まれないようにするため、プレビューは 10 件のレコードに制限されています。設定を変更すると、プレビューもそれに応じて変更されます。フォーマットファイルデータをテーブルに正常に変換するテンプレートを選択します。事前定義されたテンプレートの設定を変更したり、新しいテンプレートを追加したりできます。テンプレートを追加するには、...
![](https://resources.jetbrains.com/help/img/idea/2024.2/db_sql_resolution_scopes.png)
SQL 解決スコープ
SQL 解決スコープを使用すると、フォルダーまたはファイルを特定のデータソースに関連付けることができます。このマッピングを設定すると、関連付けられたデータソースに対応するコーディング支援を使用できます。SQL 解決スコープが設定されている場合、IDE は関連するデータソースに適したデータベースオブジェクトを提案します。2 つのデータソースがあると考えてください。1 つは本番データベース(PostgreSQL 14)用で、もう 1 つはテストデータベース(PostgreSQL 12.8)用です。両...