JDBC 接続で対応する Tableau 機能を定義するため、Tableau Datasource Customization (TDC) ファイルで次の機能のカスタマイズを設定できます。

これらのカスタマイズ内容の多くは、Tableau が発行する SQL クエリ型に影響します。定義されていない設定の場合、Tableau はさまざまな形式の SQL クエリを発行して経験的にどの形式に対応しているのかを確認することで、各機能の適切な値を決定しようとします。

CAP_CREATE_TEMP_TABLES Tableau が特定の複雑なクエリや最適化されたクエリに必要な一時テーブルを作成することができる場合、「yes」に設定します。CAP_SELECT_INTO も参照してください。
CAP_CONNECT_STORED_PROCEDURE ストアド プロシージャへの接続に対応することを許可する場合は、「yes」に設定します。
CAP_FAST_METADATA スキーマが小規模から中規模の場合は、「yes」に設定します。この機能は、Tableau が接続直後にすべてのオブジェクトを列挙するかどうかを制御します。値を「yes」に設定するとこの機能が有効になり、新規接続の作成時のパフォーマンスが改善されます。この機能を無効にすると、すべてのオブジェクトを取得する代わりに、特定のスキーマやテーブルを検索できます。空の文字列を使用すると、すべてのオブジェクトを検索できます。この機能は、9.0 以降で使用できます。
CAP_ISOLATION_LEVEL_READ_COMMITTED データ ソースで対応している場合、強制的にトランザクション分離レベルを "Read Committed" にするには、「yes」に設定します。4 つのトランザクション分離レベルのうち、1 つのみを「yes」に設定します。次も参照してください: CAP_SET_ISOLATION_LEVEL_VIA_SQL。
CAP_ISOLATION_LEVEL_READ_UNCOMMITTED データ ソースで対応している場合、強制的にトランザクション分離レベルを "Read Uncommitted" にするには、「yes」に設定します。4 つのトランザクション分離レベルのうち、1 つのみを「yes」に設定します。この機能はロック競合を減らすことにより速度を向上させる可能性がありますが、クエリ結果のデータが部分的または一貫性のない状態になる可能性があります。次も参照してください: CAP_SET_ISOLATION_LEVEL_VIA_SQL。
CAP_ISOLATION_LEVEL_REPEATABLE_READS データ ソースで対応している場合、強制的にトランザクション分離レベルを "Repeatable Reads" にするには、「yes」に設定します。4 つのトランザクション分離レベルのうち、1 つのみを「yes」に設定します。次も参照してください: CAP_SET_ISOLATION_LEVEL_VIA_SQL。
CAP_ISOLATION_LEVEL_SERIALIZABLE データ ソースで対応している場合、強制的にトランザクション分離レベルを "Serializable" にするには、「yes」に設定します。4 つのトランザクション分離レベルのうち、1 つのみを「yes」に設定します。これは非常に標準的な設定で、パフォーマンスは低下しますが、安定性は向上する可能性があります。次も参照してください: CAP_SET_ISOLATION_LEVEL_VIA_SQL。
CAP_JDBC_BIND_DETECT_ALIAS_CASE_FOLDING Tableau で、予想されるフィールド名ではなく、大文字や小文字のみを使用する結果セットのフィールド名を報告する JDBC データ ソースを検出し、それから復元を許可するには、「yes」に設定します。
CAP_JDBC_EXPORT_DATA_BATCH JDBC 一括操作をデータの挿入に使用するのを無効するには、「no」に設定します。
CAP_JDBC_METADATA_GET_INDEX_INFO インデックス情報の読み取りを無効にするには、「no」に設定します。
CAP_JDBC_METADATA_READ_FOREIGNKEYS 外部キー メタデータの読み取りを無効にするには、「no」に設定します。
CAP_JDBC_METADATA_READ_PRIMARYKEYS プライマリ キー メタデータの読み取りを無効にするには、「no」に設定します。
CAP_JDBC_METADATA_USE_RESULTSET_FOR_TABLE 選択 * クエリの結果セットから列のメタデータを取得するには、「yes」に設定します。Tableau 2020.4 以降で使用できます。
CAP_JDBC_QUERY_ASYNC 別のスレッドでクエリを実行するには、「yes」に設定します。
CAP_JDBC_QUERY_CANCEL ドライバーがクエリをキャンセルできる場合は、「yes」に設定します。
CAP_JDBC_QUERY_DISABLE_AUTO_COMMIT クエリの実行時に既定の自動コミット モードを無効にするには、「yes」に設定します。Tableau 2020.4 以降で使用できます。
CAP_JDBC_QUERY_FORCE_PREPARE 実行前に常にクエリを準備するには、「yes」に設定します。Tableau 2020.4 以降で使用できます。
CAP_JDBC_SUPPRESS_EMPTY_CATALOG_NAME 欠落しているカタログを無視するには、「yes」に設定します。
CAP_JDBC_SUPPRESS_ENUMERATE_DATABASES データベースの列挙を無効にするには、「yes」に設定します。
CAP_JDBC_SUPPRESS_ENUMERATE_SCHEMAS スキーマの列挙を無効にするには、「yes」に設定します。
CAP_JDBC_METADATA_SUPPRESS_PREPARED_QUERY CAP_JDBC_METADATA_USE_RESULTSET_FOR_TABLE が有効になっている場合は、この機能を「yes」に設定して、テーブル メタデータの読み取りに使用されるクエリの準備を無効にします。where-false 句でラップされたクエリを実行します。
CAP_JDBC_USE_ADAPTIVE_FETCH_SIZE ResultSet メタデータを使用して最適な取得サイズを決定するには、「yes」に設定します。正しく動作するためには、CAP_JDBC_QUERY_FORCE_PREPARE を有効にする必要がある場合があります。Tableau 2020.4 以降で使用できます。
CAP_MULTIPLE_CONNECTIONS_FROM_SAME_IP Tableau がデータベースへの 1 つを超えるアクティブな接続を作成するのを防ぐには、「no」に設定します。これは標準的な設定で、パフォーマンスは下がりますが、安定性は高まる可能性があります。
CAP_QUERY_BOOLEXPR_TO_INTEXPR Tableau で、任意のブール式を整数値にし、結果セットに含める必要がある場合は、「yes」に設定します。
CAP_QUERY_FROM_REQUIRES_ALIAS FROM 句で、特定のテーブルに別名を提供する必要がある場合は、「yes」に設定します。
CAP_QUERY_GROUP_ALLOW_DUPLICATES SQL クエリで GROUP BY 句に重複する式を含めることができない場合は、「no」に設定します (一般的ではありません)。
CAP_QUERY_GROUP_BY_ALIAS 集計のある SQL クエリで、SELECT 一覧の対応する別名よりグループ化列を参照することができる場合は、「yes」に設定します。例:GROUP BY "none_ShipCountry_nk"。
CAP_QUERY_GROUP_BY_DEGREE 集計のある SQL クエリで、各列の位置よりグループ化列を参照することができる場合は、「yes」に設定します。例:GROUP BY 2, 5。CAP_QUERY_SORT_BY_DEGREE も参照してください。
CAP_QUERY_HAVING_REQUIRES_GROUP_BY Tableau で、HAVING 句はあるもののグループ化列のない任意のクエリで人工グループ化フィールドを使用する必要がある場合、「yes」に設定します。
CAP_QUERY_HAVING_UNSUPPORTED HAVING の SQL 構文に対応していない場合、「yes」に設定します。Tableau では、サブクエリを使用してこれを回避することができる場合があります。CAP_QUERY_SUBQUERIES も参照してください。
CAP_QUERY_INCLUDE_GROUP_BY_COLUMNS_IN_SELECT すべての GROUP BY 式が SELECT 式一覧にも表示されるよう要求するには、「yes」に設定します。
CAP_QUERY_JOIN_ACROSS_SCHEMAS SQL クエリが、異なるスキーマに位置するテーブルの結合を表すことができる場合、「yes」に設定します。
CAP_QUERY_JOIN_ASSUME_CONSTRAINED データベース テーブルに FK-PK 関係がない場合でも内部結合をカリングするには、「yes」に設定します。
CAP_QUERY_JOIN_PUSH_DOWN_CONDITION_EXPRESSIONS 結合を書き換えて ON 句の条件を単純化してシンプルな識別子の比較にするには、「yes」に設定します。
CAP_QUERY_JOIN_REQUIRES_SCOPE 正しい評価順にするために、SQL クエリがかっこ内のそれぞれの結合句を詳細に調べる必要がある場合、「yes」に設定します。
CAP_QUERY_JOIN_REQUIRES_SUBQUERY サブクエリで構成される 2 つを超えるテーブルを含む結合式を強制するには、「yes」に設定します。
CAP_QUERY_NULL_REQUIRES_CAST データ ソースですべての NULL リテラルが 1 つの明示的なデータ型であることが要求される場合、「yes」に設定します。
CAP_QUERY_SELECT_ALIASES_SORTED Tableau で、SELECT 式 (別名ごとに並べ替え) に対して決定的な命令を出し、Tableau 視覚化でクエリ結果と各フィールドを正しく一致させる必要がある場合、「yes」に設定します。これは、クエリ結果を含むメタデータが返されるときに SELECT 式の別名を保存しないデータ ソースの場合にのみ要求されます。
CAP_QUERY_SORT_BY_DEGREE SQL クエリが、各列の順序位置に基づいて並べ替え列を参照することができる場合は、「yes」に設定します。例:ORDER BY 2, 5。CAP_QUERY_GROUP_BY_DEGREE も参照してください。
CAP_QUERY_SUBQUERIES データ ソースがサブクエリに対応している場合、「yes」に設定します。
CAP_QUERY_SUBQUERIES_WITH_TOP データ ソースがサブクエリ内の TOP や LIMIT 行制限句に対応している場合、「yes」に設定します。
CAP_QUERY_SUBQUERY_DATASOURCE_CONTEXT サブクエリでフィルターされたクエリ コンテキストを使用してデータ ソース フィルターを実装するには、「yes」に設定します。この機能は、Tableau 8.0 から Tableau 9.3 でのみ使用できます。
CAP_QUERY_SUBQUERY_QUERY_CONTEXT Tableau で、一時テーブルとローカルでキャッシュした結果ではなく、コンテキスト フィルターのサブクエリを強制的に使用するには、「yes」に設定します。
CAP_QUERY_TOP_N データ ソースが任意の形式の行制限句に対応している場合、「yes」に設定します。対応している正確な形式は、次のとおりです。
CAP_QUERY_TOPSTYLE_LIMIT データ ソースが行制限句として LIMIT を使用する場合、「yes」に設定します。
CAP_QUERY_TOPSTYLE_ROWNUM データ ソースが行制限句として、ROWNUM に関して Oracle スタイルのフィルターに対応している場合、「yes」に設定します。
CAP_QUERY_TOPSTYLE_TOP データ ソースが行制限句として TOP を使用する場合、「yes」に設定します。
CAP_QUERY_USE_QUERY_FUSION Tableau が複数の個々のクエリを 1 つのクエリにまとめるのを回避するには、「no」に設定します。パフォーマンスを調整する必要がある場合、またはデータベースが大量のクエリを処理できない場合は、この機能をオフにします。この機能は既定では有効で、Tableau 9.0 以降の Tableau データ抽出を除くすべてのデータ ソースで使用できます。Tableau 9.0.6 から、Tableau データ抽出でこの機能に対応しています。
CAP_SELECT_INTO Tableau が別のクエリの結果セットのフライに関するテーブルを作成することができる場合、「yes」に設定します。CAP_CREATE_TEMP_TABLES も参照してください。
CAP_SELECT_TOP_INTO Tableau がクエリの結果セットからテーブルを作成するときに TOP や LIMIT 行制限句を使用できる場合は、「yes」に設定します。
CAP_SET_ISOLATION_LEVEL_VIA_SQL Tableau で、SQL クエリを使用しているデータ ソースのトランザクション分離レベルを強制的に設定するには、「yes」に設定します。4 つの CAP_ISOLATION_LEVEL 機能のいずれかが「yes」に設定されている場合、CAP_SET_ISOLATION_LEVEL_VIA_SQL を「yes」に設定する必要があります。
CAP_STORED_PROCEDURE_PREFER_TEMP_TABLE 一時テーブルを使用して、ストアド プロシージャ結果セットに対するリモート クエリに対応するには、「yes」に設定します。
CAP_STORED_PROCEDURE_REPAIR_TEMP_TABLE_STRINGS メタデータで幅が示されない場合や正数以外の幅が示される場合に実際の文字列の幅を計算するには、「yes」に設定します。
CAP_STORED_PROCEDURE_TEMP_TABLE_FROM_BUFFER 一時テーブルにバッファされた結果セットをそのまま設定するには、「yes」に設定します。
CAP_STORED_PROCEDURE_TEMP_TABLE_FROM_NEW_PROTOCOL この操作で作成された別のプロトコルから一時テーブルにデータを設定するには、「yes」に設定します。
CAP_SUPPRESS_DISCOVERY_QUERIES Tableau で、対応しているさまざまな句の SQL 構文を検出するのを防ぐには、「yes」に設定します。
CAP_SUPPRESS_DISPLAY_LIMITATIONS このデータ ソースの制限に関するすべての警告を非表示にするには、「yes」に設定します。

関連項目

その他のデータベース (JDBC) – その他のデータベース (JDBC) コネクタを使用してデータに接続する方法を説明します。

ありがとうございます!