Cloud

Build 25.0.9434
  • Azure Cosmos DB
      • 接続の前に
    • はじめに
      • 接続の確立
      • データアクセスのファインチューニング
      • バッチ書き込みのRU 予算を設定する
    • NoSQL データベース
      • 自動スキーマ検出
      • 自由形式クエリ
      • 垂直フラット化
      • JSON 関数
      • SQL API 組み込み関数
      • SQL API GROUP BY
      • SQL API JOIN IN
      • クエリマッピング(Sql API)
      • カスタムスキーマ定義
      • カスタムスキーマ例
      • システムテーブル
        • sys_catalogs
        • sys_schemas
        • sys_tables
        • sys_tablecolumns
        • sys_procedures
        • sys_procedureparameters
        • sys_keycolumns
        • sys_foreignkeys
        • sys_primarykeys
        • sys_indexes
        • sys_connection_props
        • sys_sqlinfo
        • sys_identity
        • sys_information
      • ストアドプロシージャ
        • AddDocument
    • 接続文字列オプション
      • Authentication
        • AuthScheme
        • AccountEndpoint
        • AccountKey
        • TokenType
      • Azure Authentication
        • AzureTenant
        • AzureEnvironment
      • OAuth
        • OAuthClientId
        • OAuthClientSecret
        • Scope
      • JWT OAuth
        • OAuthJWTCert
        • OAuthJWTCertType
        • OAuthJWTCertPassword
        • OAuthJWTCertSubject
      • SSL
        • SSLClientCert
        • SSLClientCertType
        • SSLClientCertPassword
        • SSLClientCertSubject
        • SSLServerCert
      • Logging
        • Verbosity
      • Schema
        • BrowsableSchemas
        • Schema
      • Miscellaneous
        • CalculateAggregates
        • ConsistencyLevel
        • FlattenArrays
        • FlattenObjects
        • ForceQueryOnNonIndexedContainers
        • MaxRows
        • MaxThreads
        • MultiThreadCount
        • Pagesize
        • PseudoColumns
        • RequestPriorityLevel
        • RowScanDepth
        • SeparatorCharacter
        • SetPartitionKeyAsPK
        • Timeout
        • TypeDetectionScheme
        • UseRidAsPk
        • WriteThroughputBudget
    • Third Party Copyrights

Azure Cosmos DB - CData Cloud

概要

CData Cloud は、クラウドホスト型のソリューションで、複数の標準サービスやプロトコルにまたがるAzure Cosmos DB へのアクセスを実現します。SQL Server データベースに接続できるアプリケーションであれば、CData Cloud を介してAzure Cosmos DB に接続できます。

CData Cloud により、他のOData エンドポイントや標準SQL Server と同じように、Azure Cosmos DB への接続を標準化し、構成することができます。

主要機能

  • SQL をフルサポート:Azure Cosmos DB は、標準のリレーショナルデータベースとして表示され、Filter、Group、Join などの操作を実行できます。これらの操作は基盤となるAPI でサポートされているかどうかに関わらず、標準SQL を使用します。
  • CRUD サポート:読み取りと書き込みの両方の操作がサポートされており、Cloud またはデータソースのダウンストリームで設定できるセキュリティ設定によってのみ制限されます。
  • セキュアアクセス:管理者は、ユーザーを作成し、特定のデータベースへのアクセス、読み取り専用操作、または完全な読み書きの権限を定義することができます。
  • 包括的なデータモデルとダイナミックディスカバリー:CData Cloud は、動的データや検索可能なメタデータへのフルアクセスなど、基盤となるデータソースで公開されるすべてのデータへの包括的なアクセスを提供します。

CData Cloud

接続の前に

接続の前に

Azure ID に正しいロールが割り当てられていることを確認します。 Azure AD 認証の場合、ID はブラウザへのログインに使用するアカウントです。 Azure サービスプリンシパル認証の場合、ID はアプリケーション自身です。

独自のカスタムロール定義を作成するか、組み込みのロール定義のいずれかを割り当てることができます。

  • CosmosDB Built-in Data Reader
  • CosmosDB Built-in Data Contributor

また、ロール割り当てのスコープも設定する必要があり、「/」はそのID がすべてのデータベースにアクセスできることを意味します。

詳細はMicrosoft Entra ID を使用してAzure Cosmos DB アカウントのロールベースのアクセス制御を構成する を参照してください。

CData Cloud

はじめに

このページでは、CData Cloud でのAzure Cosmos DB への接続の確立 のガイド、利用可能なリソースに関する情報、および使用可能な接続プロパティのリファレンスについて説明します。

Azure Cosmos DB への接続

接続の確立 は、CData Cloud にデータベースを作成するためのAzure Cosmos DB への認証方法と必要な接続プロパティの設定方法について示します。

CData Cloud サービスからデータにアクセス

利用可能な標準サービスを経由してAzure Cosmos DB からデータにアクセスする方法と、CData Cloud の管理については、CData Cloud ドキュメント で詳しく説明します。

CData Cloud

接続の確立

Database タブで対応するアイコンを選択して、Azure Cosmos DB に接続します。必須プロパティはSettings にリストされています。Advanced タブには、通常は必要ない接続プロパティが表示されます。

Azure Cosmos DB への接続

Azure Cosmos DB は、アカウントキー、Azure AD、Azure Service Principal による接続と認証をサポートします。

アカウントキー

Azure Portal にログインしてAzure Cosmos DB を選択し、自分のアカウントを選択します。

認証するには以下のように設定します。

  • AccountEndpoint:Cosmos DB アカウントURL。これを、Cosmos DB アカウントの設定 -> キーブレードにあるURI 値に設定します。
  • AccountKey:Azure Cosmos DB に接続するためのマスターキートークンまたはリソーストークン。これを、Cosmos DB アカウントの設定 -> キーブレードにあるプライマリキー値に設定します。
  • TokenType:(オプション)アカウント作成時に生成される完全なアクセス許可を持つトークンであるマスタートークンを使用する場合は、これを"master"(デフォルト値)に設定します。 その他の場合、リソーストークンを使用している場合は、このプロパティを"resource" に設定します。リソーストークンは、データベースユーザーがセットアップされたときに生成されるカスタムのアクセス許可トークンです。

Entra ID(Azure AD)

Note:Microsoft はAzure AD をEntra ID にリブランドしました。ユーザーがEntra ID 管理サイトを操作する必要があるトピックでは、Microsoft が使用している名称と同じものを使用します。ただし、名前または値が"Azure AD" を参照しているCData 接続プロパティは、依然として存在します。

Microsoft Entra ID は、マルチテナント型のクラウドベースのID およびアクセス管理プラットフォームです。 OAuth ベースの認証フローに対応しており、ドライバーによるAzure Cosmos DB エンドポイントへのセキュアなアクセスを実現します。

Web アプリケーションを介したEntra ID への認証には、必ずはじめにカスタムOAuth アプリケーションを作成して登録する必要があります。 これにより、アプリケーションは独自のリダイレクトURI を定義し、クレデンシャルのスコープを管理し、組織固有のセキュリティポリシーに準拠することができるようになります。

カスタムOAuth アプリケーションの作成および登録方法の詳細については、Entra ID(Azure AD)アプリケーションの作成 を参照してください。

AuthScheme をAzureAD に設定した後の認証手順は、環境によって異なります。 デスクトップアプリケーション、Web ベースのワークフロー、またはヘッドレスシステムから接続する方法の詳細については、以下のセクションを参照してください。

Azure サービスプリンシパル

Note:Microsoft はAzure AD をEntra ID にリブランドしました。ユーザーがEntra ID 管理サイトを操作する必要があるトピックでは、Microsoft が使用している名称と同じものを使用します。ただし、名前または値が"Azure AD" を参照しているCData 接続プロパティは、依然として存在します。

Azure サービスプリンシパルは、ロールに基づいたアプリケーションベースの認証です。これは、認証がユーザーごとではなく、アプリケーションごとに行われることを意味します。 アプリケーションで実行されるすべてのタスクは、デフォルトユーザーコンテキストなしで、割り当てられたロールに基づいて実行されます。 リソースへのアプリケーションのアクセスは、割り当てられたロールの権限によって制御されます。

Azure サービスプリンシパル認証の設定方法については、Entra ID(Azure AD)でのサービスプリンシパルアプリの作成 を参照してください。

CData Cloud

データアクセスのファインチューニング

データアクセスのファインチューニング

次のプロパティを使って、Azure Cosmos DB API 機能およびCloud のストラテジーをさらに制御できます。

  • RowScanDepth:このプロパティは、テーブルメタデータを生成する際にカラムのデータ型を検出するためにスキャンされる行数を指定します。
  • TypeDetectionScheme:このプロパティは、RowScanDepth プロパティで実装されたストラテジーをより詳細に制御できます。
  • GenerateSchemaFiles:このプロパティを使用すると、例えばテーブルメタデータを、カスタマイズしやすい静的スキーマファイルに永続化したり、カラムのデータ型の変更を永続化したりできます。
    このプロパティを"OnStart" に設定すると、接続時にデータベース内のすべてのテーブルのスキーマファイルを生成できます。あるいは、テーブルにSELECT クエリを実行したときにスキーマを生成できます。
    生成されるスキーマは、自動スキーマ検出 の設定に使用する接続プロパティに基づいています。
    生成されたスキーマファイルを使用するには、Location プロパティをスキーマを有するフォルダに設定します。

CData Cloud

バッチ書き込みのRU 予算を設定する

SQL 準拠 で説明されるように、Cloud はバッチCUD(Create、Update、Delete)操作をサポートします。バッチ処理は、複数のリクエストを同時に発行することで実現します。 この方法では書き込み操作のパフォーマンスが大幅に向上しますが、この操作のコストは比較的高いため、特定のコンテナーやデータベースの1秒あたりの要求ユニット(RU)予算を超える可能性があります。 Azure Cosmos DB サービスのクォータによっては、RU 予算を超えると追加コストが発生したり、他のワークロードのAzure Cosmos DB 利用が一時的に制限されたり、中断されたりすることがあります。

1秒あたりのRU 予算を超えないようにするため、Cloud は、設定されたWriteThroughputBudget と、常に調整されるステートメントあたりの平均RU コストに応じて、1秒あたりの同時リクエスト数を動的に調整します。 ユーザーは、WriteThroughputBudget 接続プロパティを利用してバッチ書き込み操作が超えてはならない1秒あたりのRU 予算を定義することができます。 バッチ書き込み操作におけるもう一つの重要な要素にMaxThreads 接続プロパティがあり、これは同時リクエストの最大数を指定します。 MaxThreads の値を低くすると、Cloud は利用可能な予算を効率的に使用できない可能性があります。

リクエストのスロットリングロジックはクライアントサイドで適用されるため、比較的少量であってもRU / 秒予算を超過する場合があります。 このようなケースには、カラム数やカラムごとの入力値の長さが大きく変化するレコードの挿入、更新、削除が含まれます。

Note:デフォルトでは、WriteThroughputBudget プロパティは1000 RU/s、MaxThreads プロパティは200スレッドに設定されています。

CData Cloud

NoSQL データベース

Azure Cosmos DB はスキーマレスなドキュメントデータベースで、高いパフォーマンス、使用性、およびスケーラビリティを提供します。これらの機能は、必ずしもSQL-92 のような標準準拠のクエリ言語と互換しないわけではありません。このセクションでは、Cloud が複数のやり方によって、リレーショナルSQL とドキュメントデータベースのギャップの橋渡しをいかに行うかを説明します。

テーブルとしてのAzure Cosmos DB オブジェクトの操作

Cloud では、スキーマレスなAzure Cosmos DB オブジェクトをリレーショナルテーブルにモデル化し、SQL クエリをAzure Cosmos DB クエリに読み替えることで、要求されたデータを取得します。 さまざまなAzure Cosmos DB 操作がSQL としてどのように表されるかの詳細については、クエリマッピング(Sql API) を参照してください。

スキーマの自動検出

自動スキーマ検出 スキームでは、設定された行数のオブジェクトをスキャンすることで、自動的にAzure Cosmos DB 内のデータ型を見つけます。Azure Cosmos DB コレクションのリレーショナル表現をコントロールするためにRowScanDepth、FlattenArrays、およびFlattenObjects を使うことができます。スキーマに結びついていない自由形式クエリ を記述することもできます。

スキーマのカスタマイズ

オプションとして、カスタムスキーマ定義 を使って、Azure Cosmos DB オブジェクトの上に選択されたリレーショナル構造を投射することもできます。これにより、自分で選択したカラム名、データ型、 コレクション内の値の位置を定義することができます。

GenerateSchemaFiles を設定すると、検出されたスキーマを拡張しやすいシンプルな設定ファイルとして保存できます。データベース内のすべてのコレクション、もしくはSELECT クエリの結果にスキーマを保持することができます。

Limitations of the RawValue TypeDetectionScheme

If the TypeDetectionScheme is set to RawValue, the Cloud will push each document as single aggregate value on a column named JsonData, along with its resource identifier on the separate Primary Key column. The JSON documents are not processed, and as a result, the below functionalities are NOT supported with this configuration.

  • 自動スキーマ検出
  • 自由形式クエリ
  • 垂直フラット化
  • SQL API 組み込み関数
  • SQL API GROUP BY
  • SQL API JOIN IN
  • Almost all server side supported filters apart from WHERE clause conditions built with the resource identifier.

CData Cloud

自動スキーマ検出

Cloud は、コレクション内のAzure Cosmos DB ドキュメントをサンプルとして調べ、リレーショナルスキーマを提案します。RowScanDepth プロパティを使って、Cloud がスキャンするドキュメント数を設定することができます。検出プロセスで特定されるカラムはFlattenArrays およびFlattenObjects プロパティに依存します。

オブジェクトのフラット化

FlattenObjects が設定されている場合、すべてのネストされたオブジェクトは連続したカラムにフラット化されます。例えば、次のドキュメントを考えましょう。

{
  id: 12,
  name: "Lohia Manufacturers Inc.",
  address: {street: "Main Street", city: "Chapel Hill", state: "NC"},
  offices: ["Chapel Hill", "London", "New York"],
  annual_revenue: 35,600,000
}
このドキュメントは次のカラムにより表されます:

カラム名データ型サンプル値
idInteger12
nameStringLohia Manufacturers Inc.
address.streetStringMain Street
address.cityStringChapel Hill
address.stateStringNC
officesString["Chapel Hill", "London", "New York"]
annual_revenueDouble35,600,000

FlattenObjects が設定されていない場合、address.street、address.city、およびaddress.state カラムは別々にはなりません。文字列型の住所カラムは一つのオブジェクトとして表されます。値は次のようになります {street:"Main Street", city:"Chapel Hill", state:"NC"}。JSON アグリゲートの詳細についてはJSON 関数 を参照してください。

カラム名の区切り文字をドットから変更するには、SeparatorCharacter を設定します。

配列のフラット化

FlattenArrays プロパティは配列の値をフラット化してそれぞれのカラムとするために使われます。これは次の例のように短い配列の場合にのみ推奨されます。

"coord": [ -73.856077, 40.848447 ]
FlattenArrays プロパティは2に設定して上の配列を次のように表すことができます:

カラム名データ型サンプル値
coord.0Float-73.856077
coord.1Float40.848447

アンバウンドの配列をそのままにしておき、必要な際にJSON 関数 を使ってデータを取り出すことをお勧めします。

CData Cloud

自由形式クエリ

自動スキーマ検出 の説明にあるとおり、直感的なテーブルスキーマは非構造化Azure Cosmos DB データへのSQL アクセスを可能にします。JSON 関数 は標準のJSON 関数を使ってAzure Cosmos DB データをサマライズし、あらゆるネスト構造から値を抽出できます。 カスタムスキーマ定義 では静的なテーブルを定義でき、データのリレーショナルビューでの緻密な制御を可能にします。例えば、parent/child テーブルやfact/dimension テーブルを定義するスキーマを記述することができます。 しかし、これらのスキーマに限定されません。

接続後は、どんなネストされた構造でもデータをフラット化せずにクエリできますFlattenArrays やFlattenObjects でアクセスできるあらゆるリレーションへは、アドホックなSQL クエリを使ってもアクセスが可能です。

次のRestaurant データセットからのサンプルドキュメントを考えてみましょう。

 
{
  "address": {
    "building": "1007",
    "coord": [
      -73.856077,
      40.848447
    ],
    "street": "Morris Park Ave",
    "zipcode": "10462"
  },
  "borough": "Bronx",
  "cuisine": "Bakery",
  "grades": [
    {
      "grade": "A",
      "score": 2,
      "date": {
        "$date": "1393804800000"
      }
    },
    {
      "date": {
        "$date": "1378857600000"
      },
      "grade": "B",
      "score": 6
    },
    {
      "score": 10,
      "date": {
        "$date": "1358985600000"
      },
      "grade": "C"
    }
  ],
  "name": "Morris Park Bake Shop",
  "restaurant_id": "30075445"
} 
このドキュメントのあらゆるネスト構造にカラムとしてアクセスできます。以下のクエリで示すように、ドット表記法を使ってアクセスしたい値にドリルダウンします。配列のインデックスはゼロオリジンです。例えば、次のクエリではサンプル内のrestaurant のsecond grade を取得します。
SELECT [address.building], [grades.1.grade] FROM restaurants WHERE restaurant_id = '30075445'
先のクエリは、次の結果を返します。

カラム名データ型サンプル値
address.buildingString1007
grades.1.gradeStringA

CData Cloud

垂直フラット化

ドキュメントの配列を、個別のテーブルのように取得することが可能です。例えば、restaurants コレクションから次のJSON 構造を取得します。

{
  "_id" : ObjectId("568c37b748ddf53c5ed98932"),
  "address" : {
    "building" : "1007",
    "coord" : [-73.856077, 40.848447],
    "street" : "Morris Park Ave",
    "zipcode" : "10462"
  },
  "borough" : "Bronx",
  "cuisine" : "Bakery",
  "grades" : [{
      "date" : ISODate("2014-03-03T00:00:00Z"),
      "grade" : "A",
      "score" : 2
    }, {
      "date" : ISODate("2013-09-11T00:00:00Z"),
      "grade" : "A",
      "score" : 6
    }, {
      "date" : ISODate("2013-01-24T00:00:00Z"),
      "grade" : "A",
      "score" : 10
    }, {
      "date" : ISODate("2011-11-23T00:00:00Z"),
      "grade" : "A",
      "score" : 9
    }, {
      "date" : ISODate("2011-03-10T00:00:00Z"),
      "grade" : "B",
      "score" : 14
    }],
  "name" : "Morris Park Bake Shop",
  "restaurant_id" : "30075445"
}
垂直フラット化ではgrades 配列を別々のテーブルとして取得することを許可します。
SELECT * FROM [restaurants.grades]
このクエリは、次のデータセットを返します。

dategradescoreP_id_index
2014-03-03T00:00:00.000ZA2568c37b748ddf53c5ed989321
2013-09-11T00:00:00.000ZA6568c37b748ddf53c5ed989322
2013-01-24T00:00:00.000ZA10568c37b748ddf53c5ed989323

ベースのrestaurants テーブルからの情報も含めたい場合は、結合を使って実現できます。フラット化された配列はルートドキュメントでのみ結合できます。Cloud では、結合の左部分を、垂直にフラット化したい配列ドキュメントだと判断します。ネストされたAzure Cosmos DB ドキュメントを結合するには、SupportEnhancedSQL をfalse に設定します。このタイプのクエリはAzure Cosmos DB API 経由でサポートされています。

SELECT [restaurants].[restaurant_id], [restaurants.grades].* FROM [restaurants.grades] JOIN [restaurants] WHERE [restaurants].name = 'Morris Park Bake Shop'
このクエリは、次のデータセットを返します。

restaurant_iddategradescoreP_id_index
300754452014-03-03T00:00:00.000ZA2568c37b748ddf53c5ed989321
300754452013-09-11T00:00:00.000ZA6568c37b748ddf53c5ed989322
300754452013-01-24T00:00:00.000ZA10568c37b748ddf53c5ed989323
300754452011-11-23T00:00:00.000ZA9568c37b748ddf53c5ed989324
300754452011-03-10T00:00:00.000ZB14568c37b748ddf53c5ed989325

CData Cloud

JSON 関数

Cloud では、JSON ストラクチャーをカラム値として返すことができます。Cloud を使って、これらのJSON ストラクチャーにおいて標準SQL 関数を使用できます。このセクションの例では、次の配列を使用します。

[
     { "grade": "A", "score": 2 },
     { "grade": "A", "score": 6 },
     { "grade": "A", "score": 10 },
     { "grade": "A", "score": 9 },
     { "grade": "B", "score": 14 }
]

JSON_EXTRACT

JSON_EXTRACT でJSON オブジェクトから個別の値を抜き出すことができます。次のクエリは、関数に第二引数として渡されたJSON パスに基づいて、以下に示す値を返します。
SELECT Name, JSON_EXTRACT(grades,'[0].grade') AS Grade, JSON_EXTRACT(grades,'[0].score') AS Score FROM Students;

カラム名サンプル値
GradeA
Score2

JSON_COUNT

JSON_COUNT 関数はJSON オブジェクト内のJSON 配列のエレメント数を返します。次のクエリは、関数に第二引数として渡されたJSON パスにより指定されたエレメント数を返します。
SELECT Name, JSON_COUNT(grades,'[x]') AS NumberOfGrades FROM Students;

カラム名サンプル値
NumberOfGrades5

JSON_SUM

JSON_SUM 関数は、JSON オブジェクト内のJSON 配列の数値の合計を返します。次のクエリは、関数に第二引数として渡されたJSON パスにより指定された合計値を返します。
SELECT Name, JSON_SUM(score,'[x].score') AS TotalScore FROM Students;

カラム名サンプル値
TotalScore 41

JSON_MIN

JSON_MIN 関数は、JSON オブジェクト内のJSON 配列の最小値を返します。次のクエリは、関数に第二引数として渡されたJSON パスにより指定された最小値を返します。
SELECT Name, JSON_MIN(score,'[x].score') AS LowestScore FROM Students;

カラム名サンプル値
LowestScore2

JSON_MAX

JSON_MAX 関数は、JSON オブジェクト内のJSON 配列の最大値を返します。次のクエリは、関数に第二引数として渡されたJSON パスにより指定された最大値を返します。
SELECT Name, JSON_MAX(score,'[x].score') AS HighestScore FROM Students;

カラム名サンプル値
HighestScore14

DOCUMENT

DOCUMENT 関数はすべてのドキュメントをJSON 文字列として取得する場合に用いられます。例として、次のクエリとその結果をご覧ください。

SELECT DOCUMENT(*) FROM Customers;
上のクエリはすべてのドキュメントを返します。
{ "id": 12, "name": "Lohia Manufacturers Inc.", "address": { "street": "Main Street", "city": "Chapel Hill", "state": "NC"}, "offices": [ "Chapel Hill", "London", "New York" ], "annual_revenue": 35,600,000 }

CData Cloud

SQL API 組み込み関数

Cosmos DB also supports a number of built-in functions for common operations, that can be used inside queries. Here are some example of how can be used as part of select columns or the WHERE clause:

Use Built-in functions as part of SELECT columns

SELECT IS_NUMBER(user_id) AS ISN_ATTR, IS_NUMBER(id) AS ISN_ID FROM [users]
SELECT POWER(user_id, 2) AS POWERSSS, LENGTH(id) AS LENGTH_ID, PI() AS JustThePI FROM [users]

Use Built-in functions as part of WHERE clause

SELECT * FROM [users] WHERE STARTSWITH(middle_name, 'G')
SELECT * FROM [users] WHERE REPLACE(middle_name, 'Chr', '___') = '___istopher'

Function groupOperations
Mathematical functionsABS, CEILING, EXP, FLOOR, LOG, LOG10, POWER, ROUND, SIGN, SQRT, SQUARE, TRUNC, ACOS, ASIN, ATAN, ATN2, COS, COT, DEGREES, PI, RADIANS, SIN, and TAN
Type checking functionsIS_ARRAY, IS_BOOL, IS_NULL, IS_NUMBER, IS_OBJECT, IS_STRING, IS_DEFINED, and IS_PRIMITIVE
String functionsARRAY, CONCAT, CONTAINS, ENDSWITH, INDEX_OF, LEFT, LENGTH, LOWER, LTRIM, REPLACE, REPLICATE, REVERSE, RIGHT, RTRIM, STARTSWITH, SUBSTRING, and UPPER
Array functionsARRAY_CONCAT, ARRAY_CONTAINS, ARRAY_LENGTH, and ARRAY_SLICE

Mathematical functions

The mathematical functions each perform a calculation, based on input values that are provided as arguments, and return a numeric value. Here's a table of supported built-in mathematical functions.

UsageDescription
ABS (num_expr) Returns the absolute (positive) value of the specified numeric expression.
CEILING (num_expr) Returns the smallest integer value greater than, or equal to, the specified numeric expression.
FLOOR (num_expr) Returns the largest integer less than or equal to the specified numeric expression.
EXP (num_expr) Returns the exponent of the specified numeric expression.
LOG (num_expr [,base]) Returns the natural logarithm of the specified numeric expression, or the logarithm using the specified base
LOG10 (num_expr) Returns the base-10 logarithmic value of the specified numeric expression.
ROUND (num_expr) Returns a numeric value, rounded to the closest integer value.
TRUNC (num_expr) Returns a numeric value, truncated to the closest integer value.
SQRT (num_expr) Returns the square root of the specified numeric expression.
SQUARE (num_expr) Returns the square of the specified numeric expression.
POWER (num_expr, num_expr) Returns the power of the specified numeric expression to the value specified.
SIGN (num_expr) Returns the sign value (-1, 0, 1) of the specified numeric expression.
ACOS (num_expr) Returns the angle, in radians, whose cosine is the specified numeric expression; also called arccosine.
ASIN (num_expr) Returns the angle, in radians, whose sine is the specified numeric expression. This is also called arcsine.
ATAN (num_expr) Returns the angle, in radians, whose tangent is the specified numeric expression. This is also called arctangent.
ATN2 (num_expr) Returns the angle, in radians, between the positive x-axis and the ray from the origin to the point (y, x), where x and y are the values of the two specified float expressions.
COS (num_expr) Returns the trigonometric cosine of the specified angle, in radians, in the specified expression.
COT (num_expr) Returns the trigonometric cotangent of the specified angle, in radians, in the specified numeric expression.
DEGREES (num_expr) Returns the corresponding angle in degrees for an angle specified in radians.
PI () Returns the constant value of PI.
RADIANS (num_expr) Returns radians when a numeric expression, in degrees, is entered.
SIN (num_expr) Returns the trigonometric sine of the specified angle, in radians, in the specified expression.
TAN (num_expr) Returns the tangent of the input expression, in the specified expression.

Type checking functions

The type checking functions allow you to check the type of an expression within SQL queries. Type checking functions can be used to determine the type of properties within documents dynamically when it is variable or unknown. Here's a table of supported built-in type checking functions.

UsageDescription
IS_ARRAY (expr) Returns a Boolean indicating if the type of the value is an array.
IS_BOOL (expr) Returns a Boolean indicating if the type of the value is a Boolean.
IS_NULL (expr) Returns a Boolean indicating if the type of the value is null.
IS_NUMBER (expr) Returns a Boolean indicating if the type of the value is a number.
IS_OBJECT (expr) Returns a Boolean indicating if the type of the value is a JSON object.
IS_STRING (expr) Returns a Boolean indicating if the type of the value is a string.
IS_DEFINED (expr) Returns a Boolean indicating if the property has been assigned a value.
IS_PRIMITIVE (expr) Returns a Boolean indicating if the type of the value is a string, number, Boolean or null.

String functions

The following scalar functions perform an operation on a string input value and return a string, numeric or Boolean value. Here's a table of built-in string functions:

UsageDescription
ARRAY (str_expr) Project the results of the specified query as an array.
LENGTH (str_expr) Returns the number of characters of the specified string expression
CONCAT (str_expr, str_expr [, str_expr]) Returns a string that is the result of concatenating two or more string values.
SUBSTRING (str_expr, num_expr, num_expr) Returns part of a string expression.
STARTSWITH (str_expr, str_expr, bool_expr) Returns a Boolean indicating whether the first string expression starts with the second. By default, this is case-insensitive. Setting bool_expr to false makes STARTSWITH case-sensitive.
ENDSWITH (str_expr, str_expr, bool_expr) Returns a Boolean indicating whether the first string expression ends with the second. By default, this is case-insensitive. Setting bool_expr to false makes ENDSWITH case-sensitive.
CONTAINS (str_expr, str_expr, bool_expr) Returns a Boolean indicating whether the first string expression contains the second. By default, this is case-insensitive. Setting bool_expr to false makes CONTAINS case-sensitive.
INDEX_OF (str_expr, str_expr) Returns the starting position of the first occurrence of the second string expression within the first specified string expression, or -1 if the string is not found.
LEFT (str_expr, num_expr) Returns the left part of a string with the specified number of characters.
RIGHT (str_expr, num_expr) Returns the right part of a string with the specified number of characters.
LTRIM (str_expr) Returns a string expression after it removes leading blanks.
RTRIM (str_expr) Returns a string expression after truncating all trailing blanks.
LOWER (str_expr) Returns a string expression after converting uppercase character data to lowercase.
UPPER (str_expr) Returns a string expression after converting lowercase character data to uppercase.
REPLACE (str_expr, str_expr, str_expr) Replaces all occurrences of a specified string value with another string value.
REPLICATE (str_expr, num_expr) Repeats a string value a specified number of times.
REVERSE (str_expr) Returns the reverse order of a string value.

Array functions

The following scalar functions perform an operation on an array input value and return numeric, Boolean or array value. Here's a table of built-in array functions:

UsageDescription
ARRAY_LENGTH (arr_expr) Returns the number of elements of the specified array expression.
ARRAY_CONCAT (arr_expr, arr_expr [, arr_expr]) Returns an array that is the result of concatenating two or more array values.
ARRAY_CONTAINS (arr_expr, expr [, bool_expr]) Returns a Boolean indicating whether the array contains the specified value. Can specify if the match is full or partial.
ARRAY_SLICE (arr_expr, num_expr [, num_expr]) Returns part of an array expression.

Nested functions

You can also perform nested built-in functions, which are processed server side as well:

i.e. SELECT TOP 10 CONCAT(SUBSTRING(UPPER(cuisine), 0, 3), '-cuisine') FROM [restaurants]

CData Cloud

SQL API GROUP BY

The GROUP BY clause divides the query's results according to the values of one or more specified properties. This operation is partially done server-side because of some API limitations. We still need to operate a client-side grouping.

GROUP BY Examples


SELECT COUNT(*) AS CNT, gender FROM [users] GROUP BY gender
SELECT COUNT(*) AS CNT, gender, doc_type FROM [users] GROUP BY gender, doc_type

CData Cloud

SQL API JOIN IN

Cosmos DB's SQL API supports a special type of join operation called JOIN IN, which is specifically designed for working with nested arrays within documents. Unlike traditional SQL joins that combine data from separate tables, JOIN IN allows you to "flatten" and query nested array elements within a single document.

Document Structure Example

Consider a document in a 'restaurants' collection with the following structure:
        {
            "id": "3",
            "name": "DEV Park Bake Shop",
            "cuisine": "Bakery",
            "grades": [
                {
                    "date": 1393804800000,
                    "grade": "D",
                    "score": 2
                },
                {
                    "date": 1378857600000,
                    "grade": "A",
                    "score": 6
                }
            ]
        }
    

SQL Query Syntax

To query nested array elements, use the following SQL syntax:
        SELECT c.Id, g.grade, g.score, g.date
        FROM restaurants c
        JOIN g IN c.grades
        WHERE c.[name] = 'DEV Park Bake Shop'
    

CosmosDB Translation

The query is automatically translated to CosmosDB's SQL API format:
        SELECT c["Id"], g["grade"], g["score"], g["date"]
        FROM C AS c
        JOIN g IN c.grades
        WHERE c["name"] = "DEV Park Bake Shop"
    

CData Cloud

クエリマッピング(Sql API)

Cloud は、SQL クエリを対応するAzure Cosmos DB クエリにマッピングします。ここではトランスフォーメーションの詳細は説明しませんが、いくつか代表的なものを説明します。Cloud は、Aggregation Framework などのSQL API の機能の良いところを使って望まれる結果を出します。

SELECT クエリ

すべての要求を特定のコレクションに送信できるので、API にテーブル名として任意の定数文字列を送信できます。Azure ポータル標準に従って、テーブル名として"C" 文字を使用しています。

SQL クエリSql API クエリ

SELECT id, name FROM Users

SELECT C.id, C.name FROM C

SELECT * FROM Users WHERE name = 'A'

SELECT * FROM C WHERE C.name = 'A'

SELECT * FROM Users WHERE name = 'A' OR email = '[email protected]'

SELECT * FROM C WHERE C.name = 'A' OR C.email = '[email protected]'

SELECT id, grantamt FROM WorldBank WHERE grantamt IN (4500000, 85400000) OR grantamt = 16200000

SELECT C.id, C.grantamt FROM C WHERE C.grantamt IN (4500000, 85400000) OR C.grantamt = 16200000

SELECT * FROM WorldBank WHERE CountryCode = 'A' ORDER BY TotalCommAmt ASC

SELECT * FROM C WHERE C.countrycode = 'AL' ORDER BY C.totalcommamt ASC

SELECT * FROM WorldBank WHERE CountryCode = 'A' ORDER BY TotalCommAmt DESC

SELECT * FROM C WHERE C.countrycode = 'AL' ORDER BY C.totalcommamt DESC

Aggregate クエリ

Cloud は、さまざまな集計クエリの拡張的利用を行います。以下にいくつか例を示します。

SQL クエリSql API クエリ

SELECT COUNT(grantamt) AS COUNT_GRAMT FROM WorldBank

SELECT COUNT(C.grantamt) AS COUNT_GRAMT FROM C

SELECT SUM(grantamt) AS SUM_GRAMT FROM WorldBank

SELECT SUM(C.grantamt) AS SUM_GRAMT FROM C

組み込み関数

SQL クエリSql API クエリ

SELECT IS_NUMBER(grantamt) AS ISN_ATTR, IS_NUMBER(id) AS ISN_ID FROM WorldBank

SELECT IS_NUMBER(C.grantamt) AS ISN_ATTR, IS_NUMBER(C.id) AS ISN_ID FROM C

SELECT POWER(totalamt, 2) AS POWERS_A, LENGTH(id) AS LENGTH_ID, PI() AS ThePI FROM WorldBank

SELECT POWER(C.totalamt, 2) AS POWERS_A, LENGTH(C.id) AS LENGTH_ID, PI() AS ThePI FROM C

CData Cloud

カスタムスキーマ定義

自動スキーマ検出 で作成されたテーブルスキーマを、スキーマファイルに保存することで拡張できます。スキーマファイルはシンプルな形式で、変更は簡単です。

スキーマファイルの生成

GenerateSchemaFiles を"OnStart" に設定すると、接続時にすべてのテーブルのスキーマを保持します。テーブルスキーマを必要に応じて生成することもできます。GenerateSchemaFiles を"OnUse" に設定して、テーブルにSELECT クエリを実行します。

例えば、レストランのデータセットのスキーマを考えてみましょう。これはAzure Cosmos DB が提供するサンプルデータです。

コレクションからのサンプルドキュメントは以下のとおりです。

{
  "address":{
    "building":"461",
      "coord":[
        -74.138492,
        40.631136
      ],
      "street":"Port Richmond Ave",
      "zipcode":"10302"
   },
   "borough":"Staten Island",
   "cuisine":"Other",
   "name":"Indian Oven",
   "restaurant_id":"50018994"
}

スキーマのカスタマイズ

GenerateSchemaFiles が設定されている場合、Cloud はLocation プロパティで指定されたフォルダ内にスキーマを格納します。 生成されたスキーマでカラムの動作を変更できます。

次のスキーマは、other:bsonpath プロパティを使用して、特定のカラムのデータをコレクションのどこに取得するかを定義します。このモデルを使って、階層構造のアービトラリーレベルをフラット化することができます。

以下はレストランのデータセットの対応するカラム定義です。カスタムスキーマ例 では、完全なスキーマを確認できます。

<rsb:script xmlns:rsb="http://www.rssbus.com/ns/rsbscript/2">  

  <rsb:info title="StaticRestaurants" description="Custom Schema for the restaurants data set.">  
    <!-- Column definitions -->
    <attr   name="_rid"               xs:type="string"   key="true"   other:collrid="hWdRAKRi3Pg=" other:dbrid="hWdRAA==" other:partitionpath="/name" />
	<attr   name="borough"            xs:type="string"   />
    <attr   name="cuisine"            xs:type="string"   />
    <attr   name="address.building"   xs:type="string"   />
    <attr   name="address.street"     xs:type="string"   />
    <attr   name="address.coord.0"    xs:type="double"   />
    <attr   name="address.coord.1"    xs:type="double"   />
    <input name="rows@next" desc="Internal attribute used for paging through data."  />
  </rsb:info>  

  <rsb:set attr="collection" value="restaurants"/>

</rsb:script>

CData Cloud

カスタムスキーマ例

このセクションには、完全なスキーマが含まれています。info セクションではAzure Cosmos DB オブジェクトのリレーショナルビューを可能にします。詳細はカスタムスキーマ定義 を参照してください。次のテーブルではSELECT、INSERT、UPDATE、およびDELETE コマンドが以下のスキーマのGET、POST、MERGE、およびDELETE セクションとして実行されます。

スキーマにrows@next input をas-is でコピーします。 cosmosdbadoSysData のような操作は内部実装で、そのままコピーができます。

Location プロパティをスキーマファイルを格納するファイルディレクトリに設定します。

When, creating custom schemas, the attr for _rid, shown below, is required.

Also required are three properties for the _rid column definition:

  • other:dbrid is found in the _self property of an item in the collection, after "dbs/".
  • other:collrid is found in the _self property of an item in the collection, after "/colls/".
  • other:partitionpath refers to the name of the partition specified when the collection was created.

<rsb:script xmlns:rsb="http://www.rssbus.com/ns/rsbscript/2">  

  <rsb:info title="StaticRestaurants" description="Custom Schema for the restaurants data set.">  
    <!-- Column definitions -->
	<attr   name="_rid"               xs:type="string"   key="true"   other:collrid="hWdRAKRi3Pg=" other:dbrid="hWdRAA==" other:partitionpath="/name" />
    <attr   name="borough"            xs:type="string"   />
    <attr   name="cuisine"            xs:type="string"   />
    <attr   name="address.building"   xs:type="string"   />
    <attr   name="address.street"     xs:type="string"   />
    <attr   name="address.coord.0"    xs:type="double"   />
    <attr   name="address.coord.1"    xs:type="double"   />
    <input name="rows@next" desc="Internal attribute used for paging through data."  />
  </rsb:info>  

  <rsb:script method="GET">
    <rsb:call op="cosmosdbadoSysData">
      <rsb:push />
    </rsb:call>
  </rsb:script>

  <rsb:script method="POST">
    <rsb:call op="cosmosdbadoSysData">
      <rsb:push />
    </rsb:call>
  </rsb:script>

  <rsb:script method="MERGE">
    <rsb:call op="cosmosdbadoSysData">
      <rsb:push />
    </rsb:call>
  </rsb:script>

  <rsb:script method="DELETE">
    <rsb:call op="cosmosdbadoSysData">
      <rsb:push />
    </rsb:call>
  </rsb:script>

</rsb:script>

CData Cloud

システムテーブル

このセクションで説明されているシステムテーブルをクエリして、スキーマ情報、データソース機能に関する情報、およびバッチ操作の統計にアクセスできます。

スキーマテーブル

以下のテーブルは、Azure Cosmos DB のデータベースメタデータを返します。

  • sys_catalogs:利用可能なデータベースをリスト。
  • sys_schemas:利用可能なスキーマをリスト。
  • sys_tables:利用可能なテーブルおよびビューをリスト。
  • sys_tablecolumns:利用可能なテーブルおよびビューのカラムについて説明。
  • sys_procedures:利用可能なストアドプロシージャについて説明。
  • sys_procedureparameters:ストアドプロシージャパラメータについて説明。
  • sys_keycolumns:主キーおよび外部キーについて説明。
  • sys_indexes:利用可能なインデックスについて説明。

データソーステーブル

以下のテーブルは、データソースへの接続方法およびクエリ方法についての情報を返します。

  • sys_connection_props:利用可能な接続プロパティについての情報を返す。
  • sys_sqlinfo:Cloud がデータソースにオフロードできるSELECT クエリについて説明。

クエリ情報テーブル

次のテーブルは、データ変更クエリ(バッチ処理を含む)のクエリ統計を返します。

  • sys_identity:バッチ処理または単一の更新に関する情報を返す。

CData Cloud

sys_catalogs

利用可能なデータベースをリストします。

次のクエリは、接続文字列で決定されるすべてのデータベースを取得します。

SELECT * FROM sys_catalogs

Columns

Name Type Description
CatalogName String データベース名。

CData Cloud

sys_schemas

利用可能なスキーマをリストします。

次のクエリは、すべての利用可能なスキーマを取得します。

          SELECT * FROM sys_schemas
          

Columns

Name Type Description
CatalogName String データベース名。
SchemaName String スキーマ名。

CData Cloud

sys_tables

利用可能なテーブルをリストします。

次のクエリは、利用可能なテーブルおよびビューを取得します。

          SELECT * FROM sys_tables
          

Columns

Name Type Description
CatalogName String テーブルまたはビューを含むデータベース。
SchemaName String テーブルまたはビューを含むスキーマ。
TableName String テーブル名またはビュー名。
TableType String テーブルの種類(テーブルまたはビュー)。
Description String テーブルまたはビューの説明。
IsUpdateable Boolean テーブルが更新可能かどうか。

CData Cloud

sys_tablecolumns

利用可能なテーブルおよびビューのカラムについて説明します。

次のクエリは、[CData].[Entities].Customers テーブルのカラムとデータ型を返します。

SELECT ColumnName, DataTypeName FROM sys_tablecolumns WHERE TableName='Customers' AND CatalogName='CData' AND SchemaName='Entities'

Columns

Name Type Description
CatalogName String テーブルまたはビューを含むデータベースの名前。
SchemaName String テーブルまたはビューを含むスキーマ。
TableName String カラムを含むテーブルまたはビューの名前。
ColumnName String カラム名。
DataTypeName String データ型の名前。
DataType Int32 データ型を示す整数値。この値は、実行時に環境に基づいて決定されます。
Length Int32 カラムのストレージサイズ。
DisplaySize Int32 指定されたカラムの通常の最大幅(文字数)。
NumericPrecision Int32 数値データの最大桁数。文字データおよび日時データの場合は、カラムの長さ(文字数)。
NumericScale Int32 カラムのスケール(小数点以下の桁数)。
IsNullable Boolean カラムがNull を含められるかどうか。
Description String カラムの簡単な説明。
Ordinal Int32 カラムのシーケンスナンバー。
IsAutoIncrement String カラムに固定増分値が割り当てられるかどうか。
IsGeneratedColumn String 生成されたカラムであるかどうか。
IsHidden Boolean カラムが非表示かどうか。
IsArray Boolean カラムが配列かどうか。
IsReadOnly Boolean カラムが読み取り専用かどうか。
IsKey Boolean sys_tablecolumns から返されたフィールドがテーブルの主キーであるかどうか。
ColumnType String スキーマ内のカラムの役割または分類。可能な値は、SYSTEM、LINKEDCOLUMN、NAVIGATIONKEY、REFERENCECOLUMN、およびNAVIGATIONPARENTCOLUMN が含まれます。

CData Cloud

sys_procedures

利用可能なストアドプロシージャをリストします。

次のクエリは、利用可能なストアドプロシージャを取得します。

          SELECT * FROM sys_procedures
          

Columns

Name Type Description
CatalogName String ストアドプロシージャを含むデータベース。
SchemaName String ストアドプロシージャを含むスキーマ。
ProcedureName String ストアドプロシージャの名前。
Description String ストアドプロシージャの説明。
ProcedureType String PROCEDURE やFUNCTION などのプロシージャのタイプ。

CData Cloud

sys_procedureparameters

ストアドプロシージャパラメータについて説明します。

次のクエリは、EVAL ストアドプロシージャのすべての入力パラメータについての情報を返します。

SELECT * FROM sys_procedureparameters WHERE ProcedureName = 'EVAL' AND Direction = 1 OR Direction = 2

パラメータに加えて結果セットのカラムを含めるには、IncludeResultColumns 擬似カラムをTrue に設定します。

SELECT * FROM sys_procedureparameters WHERE ProcedureName = 'EVAL' AND IncludeResultColumns='True'

Columns

Name Type Description
CatalogName String ストアドプロシージャを含むデータベースの名前。
SchemaName String ストアドプロシージャを含むスキーマの名前。
ProcedureName String パラメータを含むストアドプロシージャの名前。
ColumnName String ストアドプロシージャパラメータの名前。
Direction Int32 パラメータのタイプに対応する整数値:input (1)。input/output (2)、またはoutput(4)。input/output タイプパラメータは、入力パラメータと出力パラメータの両方になれます。
DataType Int32 データ型を示す整数値。この値は、実行時に環境に基づいて決定されます。
DataTypeName String データ型の名前。
NumericPrecision Int32 数値データの場合は最大精度。文字データおよび日時データの場合は、カラムの長さ(文字数)。
Length Int32 文字データの場合は、許可される文字数。数値データの場合は、許可される桁数。
NumericScale Int32 数値データの小数点以下の桁数。
IsNullable Boolean パラメータがNull を含められるかどうか。
IsRequired Boolean プロシージャの実行にパラメータが必要かどうか。
IsArray Boolean パラメータが配列かどうか。
Description String パラメータの説明。
Ordinal Int32 パラメータのインデックス。
Values String このパラメータで設定できる値は、このカラムに表示されるものに限られます。指定できる値はカンマ区切りです。
SupportsStreams Boolean パラメータがファイルを表すかどうか。ファイルは、ファイルパスとして渡すことも、ストリームとして渡すこともできます。
IsPath Boolean パラメータがスキーマ作成操作のターゲットパスかどうか。
Default String 何も値が指定されていない場合に、このパラメータで使用される値。
SpecificName String 複数のストアドプロシージャが同じ名前を持つ場合、それぞれの同名のストアドプロシージャを一意に識別するラベル。特定の名前を持つプロシージャが1つだけの場合は、その名前がここに単純に反映されます。
IsCDataProvided Boolean プロシージャがネイティブのAzure Cosmos DB プロシージャではなく、CData によって追加 / 実装されているかどうか。

Pseudo-Columns

Name Type Description
IncludeResultColumns Boolean 出力にパラメータに加えて結果セットのカラムを含めるかどうか。デフォルトはFalse です。

CData Cloud

sys_keycolumns

主キーおよび外部キーについて説明します。

次のクエリは、[CData].[Entities].Customers テーブルの主キーを取得します。

         SELECT * FROM sys_keycolumns WHERE IsKey='True' AND TableName='Customers' AND CatalogName='CData' AND SchemaName='Entities'
          

Columns

Name Type Description
CatalogName String キーを含むデータベースの名前。
SchemaName String キーを含むスキーマの名前。
TableName String キーを含むテーブルの名前。
ColumnName String キーカラムの名前
IsKey Boolean カラムがTableName フィールドで参照されるテーブル内の主キーかどうか。
IsForeignKey Boolean カラムがTableName フィールドで参照される外部キーかどうか。
PrimaryKeyName String 主キーの名前。
ForeignKeyName String 外部キーの名前。
ReferencedCatalogName String 主キーを含むデータベース。
ReferencedSchemaName String 主キーを含むスキーマ。
ReferencedTableName String 主キーを含むテーブル。
ReferencedColumnName String 主キーのカラム名。

CData Cloud

sys_foreignkeys

外部キーについて説明します。

次のクエリは、他のテーブルを参照するすべての外部キーを取得します。

         SELECT * FROM sys_foreignkeys WHERE ForeignKeyType = 'FOREIGNKEY_TYPE_IMPORT'
          

カラム

名前 タイプ 説明
CatalogName String キーを含むデータベースの名前。
SchemaName String キーを含むスキーマの名前。
TableName String キーを含むテーブルの名前。
ColumnName String キーカラムの名前
PrimaryKeyName String 主キーの名前。
ForeignKeyName String 外部キーの名前。
ReferencedCatalogName String 主キーを含むデータベース。
ReferencedSchemaName String 主キーを含むスキーマ。
ReferencedTableName String 主キーを含むテーブル。
ReferencedColumnName String 主キーのカラム名。
ForeignKeyType String 外部キーがインポート(他のテーブルを指す)キーかエクスポート(他のテーブルから参照される)キーかを指定します。

CData Cloud

sys_primarykeys

主キーについて説明します。

次のクエリは、すべてのテーブルとビューから主キーを取得します。

         SELECT * FROM sys_primarykeys
          

Columns

Name Type Description
CatalogName String キーを含むデータベースの名前。
SchemaName String キーを含むスキーマの名前。
TableName String キーを含むテーブルの名前。
ColumnName String キーカラムの名前。
KeySeq String 主キーのシーケンス番号。
KeyName String 主キーの名前。

CData Cloud

sys_indexes

利用可能なインデックスについて説明します。インデックスをフィルタリングすることで、より高速なクエリ応答時間でセレクティブクエリを記述できます。

次のクエリは、主キーでないすべてのインデックスを取得します。

          SELECT * FROM sys_indexes WHERE IsPrimary='false'
          

Columns

Name Type Description
CatalogName String インデックスを含むデータベースの名前。
SchemaName String インデックスを含むスキーマの名前。
TableName String インデックスを含むテーブルの名前。
IndexName String インデックス名。
ColumnName String インデックスに関連付けられたカラムの名前。
IsUnique Boolean インデックスが固有の場合はTrue。そうでない場合はFalse。
IsPrimary Boolean インデックスが主キーの場合はTrue。そうでない場合はFalse。
Type Int16 インデックスタイプに対応する整数値:statistic (0)、clustered (1)、hashed (2)、またはother (3)。
SortOrder String 並べ替え順序:A が昇順、D が降順。
OrdinalPosition Int16 インデックスのカラムのシーケンスナンバー。

CData Cloud

sys_connection_props

利用可能な接続プロパティと、接続文字列に設定されている接続プロパティに関する情報を返します。

次のクエリは、接続文字列に設定されている、あるいはデフォルト値で設定されているすべての接続プロパティを取得します。

SELECT * FROM sys_connection_props WHERE Value <> ''

Columns

Name Type Description
Name String 接続プロパティ名。
ShortDescription String 簡単な説明。
Type String 接続プロパティのデータ型。
Default String 明示的に設定されていない場合のデフォルト値。
Values String 可能な値のカンマ区切りリスト。別な値が指定されていると、検証エラーがスローされます。
Value String 設定した値またはあらかじめ設定されたデフォルト。
Required Boolean プロパティが接続に必要かどうか。
Category String 接続プロパティのカテゴリ。
IsSessionProperty String プロパティが、現在の接続に関する情報を保存するために使用されるセッションプロパティかどうか。
Sensitivity String プロパティの機密度。これは、プロパティがロギングおよび認証フォームで難読化されているかどうかを通知します。
PropertyName String キャメルケースの短縮形の接続プロパティ名。
Ordinal Int32 パラメータのインデックス。
CatOrdinal Int32 パラメータカテゴリのインデックス。
Hierarchy String このプロパティと一緒に設定する必要がある、関連のある依存プロパティを表示します。
Visible Boolean プロパティが接続UI に表示されるかどうかを通知します。
ETC String プロパティに関するその他のさまざまな情報。

CData Cloud

sys_sqlinfo

Cloud がデータソースにオフロードできるSELECT クエリ処理について説明します。

SQL 構文の詳細については、SQL 準拠 を参照してください。

データソースのSELECT 機能

以下はSQL 機能のサンプルデータセットです。 SELECT 機能のいくつかの側面がサポートされている場合には、カンマ区切りのリストで返されます。サポートされていない場合、カラムにはNO が入ります。

名前説明有効な値
AGGREGATE_FUNCTIONSサポートされている集計関数。AVG, COUNT, MAX, MIN, SUM, DISTINCT
COUNTCOUNT 関数がサポートされているかどうか。YES, NO
IDENTIFIER_QUOTE_OPEN_CHAR識別子をエスケープするための開始文字。[
IDENTIFIER_QUOTE_CLOSE_CHAR識別子をエスケープするための終了文字。]
SUPPORTED_OPERATORSサポートされているSQL 演算子。=, >, <, >=, <=, <>, !=, LIKE, NOT LIKE, IN, NOT IN, IS NULL, IS NOT NULL, AND, OR
GROUP_BYGROUP BY がサポートされているかどうか。サポートされている場合、どのレベルでサポートされているか。NO, NO_RELATION, EQUALS_SELECT, SQL_GB_COLLATE
OJ_CAPABILITIESサポートされている外部結合の種類。NO, LEFT, RIGHT, FULL, INNER, NOT_ORDERED, ALL_COMPARISON_OPS
OUTER_JOINS外部結合がサポートされているかどうか。YES, NO
SUBQUERIESサブクエリがサポートされているかどうか。サポートされていれば、どのレベルでサポートされているか。NO, COMPARISON, EXISTS, IN, CORRELATED_SUBQUERIES, QUANTIFIED
STRING_FUNCTIONSサポートされている文字列関数。LENGTH, CHAR, LOCATE, REPLACE, SUBSTRING, RTRIM, LTRIM, RIGHT, LEFT, UCASE, SPACE, SOUNDEX, LCASE, CONCAT, ASCII, REPEAT, OCTET, BIT, POSITION, INSERT, TRIM, UPPER, REGEXP, LOWER, DIFFERENCE, CHARACTER, SUBSTR, STR, REVERSE, PLAN, UUIDTOSTR, TRANSLATE, TRAILING, TO, STUFF, STRTOUUID, STRING, SPLIT, SORTKEY, SIMILAR, REPLICATE, PATINDEX, LPAD, LEN, LEADING, KEY, INSTR, INSERTSTR, HTML, GRAPHICAL, CONVERT, COLLATION, CHARINDEX, BYTE
NUMERIC_FUNCTIONSサポートされている数値関数。ABS, ACOS, ASIN, ATAN, ATAN2, CEILING, COS, COT, EXP, FLOOR, LOG, MOD, SIGN, SIN, SQRT, TAN, PI, RAND, DEGREES, LOG10, POWER, RADIANS, ROUND, TRUNCATE
TIMEDATE_FUNCTIONSサポートされている日付および時刻関数。NOW, CURDATE, DAYOFMONTH, DAYOFWEEK, DAYOFYEAR, MONTH, QUARTER, WEEK, YEAR, CURTIME, HOUR, MINUTE, SECOND, TIMESTAMPADD, TIMESTAMPDIFF, DAYNAME, MONTHNAME, CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, EXTRACT
REPLICATION_SKIP_TABLESレプリケーション中にスキップされたテーブルを示します。
REPLICATION_TIMECHECK_COLUMNSレプリケーション中に更新判断のカラムとして使用するかどうかを、(指定された順に)チェックするカラムのリストを含む文字列の配列。
IDENTIFIER_PATTERN識別子としてどの文字列が有効かを示す文字列値。
SUPPORT_TRANSACTIONプロバイダーが、コミットやロールバックなどのトランザクションをサポートしているかどうかを示します。YES, NO
DIALECT使用するSQL ダイアレクトを示します。
KEY_PROPERTIESUniform データベースを特定するプロパティを示します。
SUPPORTS_MULTIPLE_SCHEMASプロバイダー用に複数のスキームが存在するかどうかを示します。YES, NO
SUPPORTS_MULTIPLE_CATALOGSプロバイダー用に複数のカタログが存在するかどうかを示します。YES, NO
DATASYNCVERSIONこのドライバーにアクセスするために必要な、CData Sync のバージョン。Standard, Starter, Professional, Enterprise
DATASYNCCATEGORYこのドライバーのCData Sync カテゴリ。Source, Destination, Cloud Destination
SUPPORTSENHANCEDSQLAPI で提供されている以上の、追加SQL 機能がサポートされているかどうか。TRUE, FALSE
SUPPORTS_BATCH_OPERATIONSバッチ操作がサポートされているかどうか。YES, NO
SQL_CAPこのドライバーでサポートされているすべてのSQL 機能。SELECT, INSERT, DELETE, UPDATE, TRANSACTIONS, ORDERBY, OAUTH, ASSIGNEDID, LIMIT, LIKE, BULKINSERT, COUNT, BULKDELETE, BULKUPDATE, GROUPBY, HAVING, AGGS, OFFSET, REPLICATE, COUNTDISTINCT, JOINS, DROP, CREATE, DISTINCT, INNERJOINS, SUBQUERIES, ALTER, MULTIPLESCHEMAS, GROUPBYNORELATION, OUTERJOINS, UNIONALL, UNION, UPSERT, GETDELETED, CROSSJOINS, GROUPBYCOLLATE, MULTIPLECATS, FULLOUTERJOIN, MERGE, JSONEXTRACT, BULKUPSERT, SUM, SUBQUERIESFULL, MIN, MAX, JOINSFULL, XMLEXTRACT, AVG, MULTISTATEMENTS, FOREIGNKEYS, CASE, LEFTJOINS, COMMAJOINS, WITH, LITERALS, RENAME, NESTEDTABLES, EXECUTE, BATCH, BASIC, INDEX
PREFERRED_CACHE_OPTIONS使用したいcacheOptions を指定する文字列値。
ENABLE_EF_ADVANCED_QUERYドライバーがEntity Framework の高度なクエリをサポートしているかどうかを示します。サポートしていなければ、クエリはクライアントサイドで処理されます。YES, NO
PSEUDO_COLUMNS利用可能な疑似カラムを示す文字列の配列。
MERGE_ALWAYS値がtrue であれば、CData Sync 内でMerge Model が強制的に実行されます。TRUE, FALSE
REPLICATION_MIN_DATE_QUERYレプリケート開始日時を返すSELECT クエリ。
REPLICATION_MIN_FUNCTIONサーバーサイドでmin を実行するために使用する式名を、プロバイダーが指定できるようになります。
REPLICATION_START_DATEレプリケート開始日を、プロバイダーが指定できるようになります。
REPLICATION_MAX_DATE_QUERYレプリケート終了日時を返すSELECT クエリ。
REPLICATION_MAX_FUNCTIONサーバーサイドでmax を実行するために使用する式名を、プロバイダーが指定できるようになります。
IGNORE_INTERVALS_ON_INITIAL_REPLICATE初回のレプリケートで、レプリケートをチャンクに分割しないテーブルのリスト。
CHECKCACHE_USE_PARENTIDCheckCache 構文を親キーカラムに対して実行するかどうかを示します。TRUE, FALSE
CREATE_SCHEMA_PROCEDURESスキーマファイルの生成に使用できる、ストアドプロシージャを示します。

次のクエリは、WHERE 句で使用できる演算子を取得します。

SELECT * FROM sys_sqlinfo WHERE Name = 'SUPPORTED_OPERATORS'
WHERE 句では、個々のテーブルの制限や要件が異なる場合がありますので注意してください。詳しくは、NoSQL データベース セクションを参照してください。

Columns

Name Type Description
NAME String SQL 構文のコンポーネント、またはサーバー上で処理できる機能。
VALUE String サポートされるSQL またはSQL 構文の詳細。

CData Cloud

sys_identity

試行された変更に関する情報を返します。

次のクエリは、バッチ処理で変更された行のId を取得します。

         SELECT * FROM sys_identity
          

Columns

Name Type Description
Id String データ変更処理から返された、データベース生成Id。
Batch String バッチの識別子。1 は単一処理。
Operation String バッチ内の処理の結果:INSERTED、UPDATED、またはDELETED。
Message String SUCCESS、またはバッチ内の更新が失敗した場合のエラーメッセージ。

CData Cloud

sys_information

利用可能なシステム情報を説明します。

次のクエリは、すべてのカラムを取得します。

SELECT * FROM sys_information

Columns

NameTypeDescription
ProductString製品名。
VersionString製品のバージョン番号。
DatasourceString製品が接続するデータソースの名前。
NodeIdString製品がインストールされているマシンの固有識別子。
HelpURLString製品のヘルプドキュメントのURL。
LicenseString製品のライセンス情報。(この情報が利用できない場合、この項目は空白のままか「N/A」と表示されます。)
LocationString製品のライブラリが格納されているファイルパスの場所。
EnvironmentString製品が現在稼働している環境またはランタイムのバージョン。
DataSyncVersionString本コネクタを使用するために必要なCData Sync のティア。
DataSyncCategoryStringCData Sync 機能のカテゴリ(例:Source、Destination)。

CData Cloud

ストアドプロシージャ

ストアドプロシージャはファンクションライクなインターフェースで、Azure Cosmos DB の単純なSELECT/INSERT/UPDATE/DELETE 処理にとどまらずCloud の機能を拡張します。

ストアドプロシージャは、パラメータのリストを受け取り、目的の機能を実行し、プロシージャが成功したか失敗したかを示すとともにAzure Cosmos DB から関連するレスポンスデータを返します。

CData Cloud - Azure Cosmos DB ストアドプロシージャ

Name Description
AddDocument Insert entire JSON string to CosmosDB.

CData Cloud

AddDocument

Insert entire JSON string to CosmosDB.

Input

Name Type Description
Database String Name of the database.
Table String Name of the table.
PartitionKey String Partition key value of the table.
Document String The JSON string to be inserted.

Result Set Columns

Name Type Description
Success String Returns true if the operation is successful.

CData Cloud

接続文字列オプション

接続文字列プロパティは、接続を確立するために使用できるさまざまなオプションです。このセクションでは、本プロバイダーの接続文字列で設定できるオプションの一覧を示します。詳細については各リンクをクリックしてください。

Authentication


プロパティ説明
AuthSchemeThe type of authentication to use when connecting to Azure Cosmos DB.
AccountEndpoint値は、Cosmos DB アカウントの[Keys]ブレードからのCosmos DB アカウントURL である必要があります。
AccountKeyAzure Cosmos DB REST API に接続するためのマスターキートークンまたはリソーストークン。
TokenTypeトークンの種類を示します:マスターまたはリソース。

Azure Authentication


プロパティ説明
AzureTenantデータにアクセスするために使用されているAzure Cosmos DB テナントを識別します。テナントのドメイン名(例: contoso.onmicrosoft.com )またはディレクトリ(テナント)ID のいずれかを受け付けます。
AzureEnvironment接続するAzure ネットワーク環境を指定します。Azure アカウントが追加されたネットワークと同じである必要があります。

OAuth


プロパティ説明
OAuthClientIdカスタムOAuth アプリケーションに割り当てられたクライアントID(コンシューマーキーとも呼ばれます)を指定します。このID は、認証時にOAuth 認可サーバーにアプリケーションを識別させるために必要です。
OAuthClientSecretカスタムOAuth アプリケーションに割り当てられたクライアントシークレットを指定します。この機密情報は、OAuth 認可サーバーに対してアプリケーションを認証するために使用されます。(カスタムOAuth アプリケーションのみ)
Scopeデータへの適切なアクセスを確実にするために、認証ユーザーのアプリケーションへのアクセス範囲を指定します。 カスタムOAuth アプリケーションが必要な場合は、通常、アプリケーションの作成時に指定します。

JWT OAuth


プロパティ説明
OAuthJWTCertクライアント証明書のJWT 証明書ストアの名前を指定します。
OAuthJWTCertTypeJWT 証明書を格納しているキーストアの種類を指定します。
OAuthJWTCertPasswordパスワードで保護された証明書ストアにアクセスするために使用されるOAuth JWT 証明書のパスワードを指定します。証明書ストアがパスワードを必要としない場合は、このプロパティを空白のままにします。
OAuthJWTCertSubjectストアで一致する証明書を検索するために使用される、OAuth JWT 証明書のサブジェクトを指定します。部分一致と、先頭の証明書を選択するためのワイルドカード '*' をサポートします。

SSL


プロパティ説明
SSLClientCertSSL クライアント認証(2-way SSL)のためのTLS/SSL クライアント証明書ストアを指定します。このプロパティは、他のSSL 関連プロパティと連動して、セキュアな接続を確立します。
SSLClientCertTypeSSL クライアント認証用のTLS/SSL クライアント証明書を格納するキーストアの種類を指定します。プラットフォームや証明書のソースに応じて、さまざまなキーストア形式から選択できます。
SSLClientCertPasswordTLS/SSL クライアント証明書ストアにアクセスするために必要なパスワードを指定します。選択した証明書ストアの種類がアクセスにパスワードを必要とする場合、このプロパティを使用します。
SSLClientCertSubjectTLS/SSL クライアント証明書のサブジェクトを指定し、証明書ストアで場所を検索します。 CN=www.server.com, C=US のように、識別名フィールドのカンマ区切りのリストを使用します。ワイルドカード * は、ストアの先頭の証明書を選択します。
SSLServerCertTLS/SSL を使用して接続する際に、サーバーが受け入れ可能な証明書を指定します。

Logging


プロパティ説明
VerbosityログファイルのVerbosity レベルを指定し、記録される情報の詳細度を制御します。サポートされる値の範囲は1から5までです。

Schema


プロパティ説明
BrowsableSchemasレポートされるスキーマを利用可能なすべてのスキーマのサブセットに制限するオプション設定。例えば、 BrowsableSchemas=SchemaA,SchemaB,SchemaC です。
Schema作業するAzure Cosmos DB データベースを指定します。

Miscellaneous


プロパティ説明
CalculateAggregates集計の計算値を返すか、パーティション範囲でグループ化するかを指定します。
ConsistencyLevelDenotes the type of token: master or resource.
FlattenArraysデフォルトで、ネスト配列はJSON 文字列として返されます。 FlattenArrays プロパティはネスト配列のエレメントをフラット化してそれぞれのカラムとするために使われます。ネスト配列から返すエレメントの数に FlattenArrays を設定します。
FlattenObjectsフラット化されたオブジェクトプロパティとしてカラムを表示するには、 FlattenObjects をtrue に設定します。そうでなければ、配列にネストされたオブジェクトはJSON 文字列として返されます。
ForceQueryOnNonIndexedContainersForce the use of an index scan to process the query if indexing is disabled or the right index path is not available.
MaxRows集計やGROUP BY を含まないクエリで返される最大行数を指定します。
MaxThreadsSpecifies the maximum number of concurrent requests for Batch CUD (Create, Update, Delete) operations.
MultiThreadCountパーティション化されたコレクション内の集計クエリでは、異なるパーティション範囲に対する並列リクエストが必要になります。このプロパティを、同時に発行する並列リクエストの数に設定します。
Pagesizeprovider がAzure Cosmos DB にデータをリクエストするときに返す、ページあたりの最大レコード数を指定します。
PseudoColumnsテーブルカラムとして公開する擬似カラムを、'TableName=ColumnName;TableName=ColumnName' の形式の文字列で指定します。
RequestPriorityLevelSpecifies the priority level for requests sent to Azure Cosmos DB when the number of requests exceeds the configured RU/s within a second.
RowScanDepthテーブルで利用可能なカラムを探すためにスキャンする行数の最大値。
SeparatorCharacter階層を示すために使用する記号。
SetPartitionKeyAsPKWhether or not to use the collection's Partition Key field as part of composite Primary Key for the corresponding exposed table.
Timeoutprovider がタイムアウトエラーを返すまでにサーバーからの応答を待機する最大時間を秒単位で指定します。
TypeDetectionScheme各ドキュメントコレクションのフィールドおよびデータタイプを決定するために、provider がデータをどのようにスキャンするかを示すカンマ区切りのオプション。
UseRidAsPkSet this property to false to switch using the id column as primary key instead the default _rid.
WriteThroughputBudgetDefines the Requests Units (RU) budget per Second that the Batch CUD (Create, Update, Delete) operations should not exceed.
CData Cloud

Authentication

このセクションでは、本プロバイダーの接続文字列で設定可能なAuthentication プロパティの全リストを提供します。


プロパティ説明
AuthSchemeThe type of authentication to use when connecting to Azure Cosmos DB.
AccountEndpoint値は、Cosmos DB アカウントの[Keys]ブレードからのCosmos DB アカウントURL である必要があります。
AccountKeyAzure Cosmos DB REST API に接続するためのマスターキートークンまたはリソーストークン。
TokenTypeトークンの種類を示します:マスターまたはリソース。
CData Cloud

AuthScheme

The type of authentication to use when connecting to Azure Cosmos DB.

Possible Values

AccountKey, AzureAD, AzureServicePrincipal, AzureServicePrincipalCert

データ型

string

デフォルト値

"AccountKey"

解説

  • AccountKey: Set this to perform authentication with AccountKey and AccountEndpoint.
  • AzureAD: Set this to perform Azure Active Directory OAuth authentication.
  • AzureServicePrincipal: Set this to authenticate as an Azure Service Principal using a Client Secret.
  • AzureServicePrincipalCert: Set this to authenticate as an Azure Service Principal using a Certificate.

CData Cloud

AccountEndpoint

値は、Cosmos DB アカウントの[Keys]ブレードからのCosmos DB アカウントURL である必要があります。

データ型

string

デフォルト値

""

解説

値は、Cosmos DB アカウントの[Keys]ブレードからのCosmos DB アカウントURL である必要があります。

CData Cloud

AccountKey

Azure Cosmos DB REST API に接続するためのマスターキートークンまたはリソーストークン。

データ型

string

デフォルト値

""

解説

Azure ポータルで、Cosmos DB サービスに移動してAzure Cosmos DB アカウントを選択します。リソースメニューから、 [Keys]ページに移動します。[PRIMARY KEY]値を見つけ、Token をこの値に設定します。

CData Cloud

TokenType

トークンの種類を示します:マスターまたはリソース。

Possible Values

master, resource

データ型

string

デフォルト値

"master"

解説

マスターキーは、アカウントの作成時に作成されます。マスターキーには、プライマリキーとセカンダリキーの2つがあります。 アカウントの管理者は、セカンダリキーを使用してキーローテーションを実行できます。さらに、アカウント管理者は必要に応じてキーを再生成することもできます。

リソーストークンは、データベース内のユーザーに、リソースへの正確なアクセス制御のためのアクセス許可が付与されたときに作成されます。アクセス許可リソースとも呼ばれます。 アクセス許可リソースには、ユーザーがアクセスできるリソースパスとアクセスタイプに関する情報で構成されたハッシュリソーストークンが含まれています。 アクセス許可リソーストークンには有効期限があり、有効期限はオーバーライドできます。 アクセス許可リソースがPOST、GET、PUT で動作するときに、新しいリソーストークンが生成されます。

CData Cloud

Azure Authentication

このセクションでは、本プロバイダーの接続文字列で設定可能なAzure Authentication プロパティの全リストを提供します。


プロパティ説明
AzureTenantデータにアクセスするために使用されているAzure Cosmos DB テナントを識別します。テナントのドメイン名(例: contoso.onmicrosoft.com )またはディレクトリ(テナント)ID のいずれかを受け付けます。
AzureEnvironment接続するAzure ネットワーク環境を指定します。Azure アカウントが追加されたネットワークと同じである必要があります。
CData Cloud

AzureTenant

データにアクセスするために使用されているAzure Cosmos DB テナントを識別します。テナントのドメイン名(例: contoso.onmicrosoft.com )またはディレクトリ(テナント)ID のいずれかを受け付けます。

データ型

string

デフォルト値

""

解説

テナントとは、Microsoft Entra ID(旧称:Azure AD)を通じて管理される、組織のユーザーやリソースのためのデジタルコンテナです。 各テナントには一意のディレクトリID が関連付けられており、多くの場合、カスタムドメイン(例:microsoft.com やcontoso.onmicrosoft.com)も関連付けられています。

Microsoft Entra 管理センターでディレクトリ(テナント)ID を確認するには、Microsoft Entra ID -> プロパティに移動し、「ディレクトリ(テナント)ID」と表示されている値をコピーします。

このプロパティは以下の場合に必要です。

  • AuthScheme がAzureServicePrincipal またはAzureServicePrincipalCert に設定されている場合
  • AuthScheme がAzureAD で、ユーザーアカウントが複数のテナントに属している場合

テナントの値は、2つの形式のいずれかで指定できます。

  • ドメイン名(例:contoso.onmicrosoft.com)
  • GUID 形式のディレクトリ(テナント)ID(例:c9d7b8e4-1234-4f90-bc1a-2a28e0f9e9e0)

テナントを明示的に指定することで、認証リクエストが正しいディレクトリにルーティングされるようになります。これは、ユーザーが複数のテナントに所属している場合や、サービスプリンシパルベースの認証を使用する場合に特に重要です。

この値が必要な場面で省略されると、認証に失敗したり、誤ったテナントに接続されたりする可能性があります。その結果、認可されていないまたはリソースが見つからないといったエラーが発生する可能性があります。

テナントとは、Microsoft Entra ID(旧称:Azure AD)を通じて管理される、組織のユーザーやリソースのためのデジタルコンテナです。 各テナントには一意のディレクトリID が関連付けられており、多くの場合、カスタムドメイン(例:microsoft.com やcontoso.onmicrosoft.com)も関連付けられています。

Microsoft Entra 管理センターでディレクトリ(テナント)ID を確認するには、Microsoft Entra ID -> プロパティに移動し、「ディレクトリ(テナント)ID」と表示されている値をコピーします。

このプロパティは以下の場合に必要です。

  • AuthScheme がAzureServicePrincipal またはAzureServicePrincipalCert に設定されている場合
  • AuthScheme がAzureAD で、ユーザーアカウントが複数のテナントに属している場合

テナントの値は、2つの形式のいずれかで指定できます。

  • ドメイン名(例:contoso.onmicrosoft.com)
  • GUID 形式のディレクトリ(テナント)ID(例:c9d7b8e4-1234-4f90-bc1a-2a28e0f9e9e0)

テナントを明示的に指定することで、認証リクエストが正しいディレクトリにルーティングされるようになります。これは、ユーザーが複数のテナントに所属している場合や、サービスプリンシパルベースの認証を使用する場合に特に重要です。

この値が必要な場面で省略されると、認証に失敗したり、誤ったテナントに接続されたりする可能性があります。その結果、認可されていないまたはリソースが見つからないといったエラーが発生する可能性があります。

CData Cloud

AzureEnvironment

接続するAzure ネットワーク環境を指定します。Azure アカウントが追加されたネットワークと同じである必要があります。

Possible Values

GLOBAL, CHINA, USGOVT, USGOVTDOD

データ型

string

デフォルト値

"GLOBAL"

解説

Azure アカウントがGlobal ネットワークとは異なるネットワーク(China、USGOVT、USGOVTDOD など)の一部である場合は、必要です。

CData Cloud

OAuth

このセクションでは、本プロバイダーの接続文字列で設定可能なOAuth プロパティの全リストを提供します。


プロパティ説明
OAuthClientIdカスタムOAuth アプリケーションに割り当てられたクライアントID(コンシューマーキーとも呼ばれます)を指定します。このID は、認証時にOAuth 認可サーバーにアプリケーションを識別させるために必要です。
OAuthClientSecretカスタムOAuth アプリケーションに割り当てられたクライアントシークレットを指定します。この機密情報は、OAuth 認可サーバーに対してアプリケーションを認証するために使用されます。(カスタムOAuth アプリケーションのみ)
Scopeデータへの適切なアクセスを確実にするために、認証ユーザーのアプリケーションへのアクセス範囲を指定します。 カスタムOAuth アプリケーションが必要な場合は、通常、アプリケーションの作成時に指定します。
CData Cloud

OAuthClientId

カスタムOAuth アプリケーションに割り当てられたクライアントID(コンシューマーキーとも呼ばれます)を指定します。このID は、認証時にOAuth 認可サーバーにアプリケーションを識別させるために必要です。

データ型

string

デフォルト値

""

解説

このプロパティは2つのケースで必要となります:

  • カスタムOAuth アプリケーションを使用する場合。たとえば、Web ベースの認証フロー、サービスベースの認証、またはアプリケーションの登録が必要な証明書ベースのフローなどが該当します。
  • ドライバーが埋め込みOAuth 資格情報を提供しない場合。

(ドライバーが埋め込みOAuth 資格情報を提供する場合、この値はすでにCloud によって設定されており、手動で入力する必要がないことがあります。)

OAuthClientId は、認証付きの接続を構成する際に、OAuthClientSecret やOAuthSettingsLocation などの他のOAuth 関連プロパティと一緒に使用されるのが一般的です。

OAuthClientId は、ユーザーがOAuth 経由で認証を行う前に設定する必要がある、主要な接続パラメータの1つです。 この値は、通常、ID プロバイダーのアプリケーション登録設定で確認できます。 Client ID、Application ID、Consumer Key などとラベル付けされた項目を探してください。

クライアントID は、クライアントシークレットのような機密情報とは見なされませんが、アプリケーションの識別情報の一部であるため、慎重に取り扱う必要があります。公開リポジトリや共有設定ファイルでこの値を露出させないようにしてください。

接続設定時にこのプロパティを使用する方法の詳細については、接続の確立 を参照してください。

CData Cloud

OAuthClientSecret

カスタムOAuth アプリケーションに割り当てられたクライアントシークレットを指定します。この機密情報は、OAuth 認可サーバーに対してアプリケーションを認証するために使用されます。(カスタムOAuth アプリケーションのみ)

データ型

string

デフォルト値

""

解説

このプロパティ(アプリケーションシークレットまたはコンシューマシークレットとも呼ばれます)は、安全なクライアント認証を必要とするすべてのフローでカスタムOAuth アプリケーションを使用する場合に必要です。たとえば、Web ベースのOAuth、サービスベースの接続、証明書ベースの認可フローなどが該当します。 組み込みOAuth アプリケーションを使用する場合は必要ありません。

クライアントシークレットは、OAuth フローのトークン交換ステップで使用されます。このステップでは、ドライバーが認可サーバーにアクセストークンを要求します。 この値が欠落しているか正しくない場合、認証はinvalid_client またはunauthorized_client エラーで失敗します。

OAuthClientSecret は、ユーザーがOAuth 経由で認証を行う前に設定する必要がある、主要な接続パラメータの1つです。この値は、OAuth アプリケーションを登録する際にID プロバイダーから取得できます。

Notes:

  • この値は安全に保管し、公開リポジトリやスクリプト、安全でない環境では決して公開しないようにしてください。
  • クライアントシークレットは、一定期間が経過すると有効期限が切れる場合もあります。 アクセスを中断させないために、有効期限を常に監視し、必要に応じてシークレットをローテーションするようにしてください。

接続設定時にこのプロパティを使用する方法の詳細については、接続の確立 を参照してください。

CData Cloud

Scope

データへの適切なアクセスを確実にするために、認証ユーザーのアプリケーションへのアクセス範囲を指定します。 カスタムOAuth アプリケーションが必要な場合は、通常、アプリケーションの作成時に指定します。

データ型

string

デフォルト値

""

解説

スコープは、認証ユーザーがどのようなアクセス権を持つかを定義するために設定されます。例えば、読み取り、読み取りと書き込み、機密情報への制限付きアクセスなどです。システム管理者は、スコープを使用して機能またはセキュリティクリアランスによるアクセスを選択的に有効化できます。

InitiateOAuth がGETANDREFRESH に設定されている場合、要求するスコープを変更したい場合はこのプロパティを使用する必要があります。

InitiateOAuth がREFRESH またはOFF のいずれかに設定されている場合、このプロパティまたはScope 入力を使用して、要求するスコープを変更できます。

CData Cloud

JWT OAuth

このセクションでは、本プロバイダーの接続文字列で設定可能なJWT OAuth プロパティの全リストを提供します。


プロパティ説明
OAuthJWTCertクライアント証明書のJWT 証明書ストアの名前を指定します。
OAuthJWTCertTypeJWT 証明書を格納しているキーストアの種類を指定します。
OAuthJWTCertPasswordパスワードで保護された証明書ストアにアクセスするために使用されるOAuth JWT 証明書のパスワードを指定します。証明書ストアがパスワードを必要としない場合は、このプロパティを空白のままにします。
OAuthJWTCertSubjectストアで一致する証明書を検索するために使用される、OAuth JWT 証明書のサブジェクトを指定します。部分一致と、先頭の証明書を選択するためのワイルドカード '*' をサポートします。
CData Cloud

OAuthJWTCert

クライアント証明書のJWT 証明書ストアの名前を指定します。

データ型

string

デフォルト値

""

解説

OAuthJWTCertType フィールドは、OAuthJWTCert により指定された証明書ストアの種類を指定します。 ストアがパスワードで保護されている場合は、OAuthJWTCertPassword を使用してパスワードを指定します。

OAuthJWTCert は、OAuthJWTCertSubject フィールドとともにクライアント証明書を指定するために使われます。 OAuthJWTCert に値が設定され、かつOAuthJWTCertSubject が設定されている場合、CData Cloud は証明書の検索を開始します。 詳しくは、OAuthJWTCertSubject を参照してください。

証明書ストアの指定はプラットフォームに依存します。

注記

  • Windows の共通のユーザーとシステム証明書ストアは以下のとおりです。
    • MY:個人証明書と関連付けられた秘密キーを 格納している証明書ストア。
    • CA:証明機関の証明書。
    • ROOT:ルート証明書。
    • SPC:ソフトウェア発行元証明書。
  • Javaでは、証明書ストアは通常、証明書および 任意の秘密キーを含むファイルです。
  • 証明書ストアの種類がPFXFile の場合は、 このプロパティにファイル名を設定します。
  • PFXBlob の場合は、このプロパティをPFX ファイルのバイナリコンテンツ(例えば、PKCS12証明書ストア)に設定する必要があります。

CData Cloud

OAuthJWTCertType

JWT 証明書を格納しているキーストアの種類を指定します。

Possible Values

PFXBLOB, JKSBLOB, PEMKEY_BLOB, PUBLIC_KEY_BLOB, SSHPUBLIC_KEY_BLOB, XMLBLOB, BCFKSBLOB

データ型

string

デフォルト値

"PEMKEY_BLOB"

解説

値説明注記
USER現在のユーザーが所有する証明書ストア。 Windows のみ使用可能です。
MACHINEマシンストア。Java やその他の非Windows 環境では使用できません。
PFXFILE証明書を含むPFX(PKCS12)ファイル。
PFXBLOBPFX(PKCS12)形式の証明書ストアをbase-64 でエンコードした文字列。
JKSFILE証明書を含むJava キーストア(JKS)ファイル。Java 専用。
JKSBLOBJava キーストア(JKS)形式の証明書ストアをbase-64 でエンコードした文字列。 Java 専用。
PEMKEY_FILE秘密鍵とオプションの証明書を含むPEM でエンコードされたファイル。
PEMKEY_BLOB秘密鍵とオプションの証明書をbase-64 でエンコードした文字列。
PUBLIC_KEY_FILEPEM またはDER でエンコードされた公開鍵証明書を含むファイル。
PUBLIC_KEY_BLOBPEM またはDER でエンコードされた公開鍵証明書をbase-64 でエンコードした文字列。
SSHPUBLIC_KEY_FILESSH 形式の公開鍵を含むファイル。
SSHPUBLIC_KEY_BLOBSSH 形式の公開鍵ををbase-64 でエンコードした文字列。
P7BFILE証明書を含むPKCS7 ファイル。
PPKFILEPuTTY 秘密キー(PPK)を含むファイル。
XMLFILEXML 形式の証明書を含むファイル。
XMLBLOBXML 形式の証明書を含む文字列。
BCFKSFILEBouncy Castle キーストアを含むファイル。
BCFKSBLOBBouncy Castle キーストアを含む文字列(base-64エンコード)。

CData Cloud

OAuthJWTCertPassword

パスワードで保護された証明書ストアにアクセスするために使用されるOAuth JWT 証明書のパスワードを指定します。証明書ストアがパスワードを必要としない場合は、このプロパティを空白のままにします。

データ型

string

デフォルト値

""

解説

このプロパティは、パスワードで保護された証明書ストアを開くために必要なパスワードを指定します。 パスワードが必要かどうかを判断するには、ご利用の証明書ストアのドキュメントまたは設定を参照してください。

CData Cloud

OAuthJWTCertSubject

ストアで一致する証明書を検索するために使用される、OAuth JWT 証明書のサブジェクトを指定します。部分一致と、先頭の証明書を選択するためのワイルドカード '*' をサポートします。

データ型

string

デフォルト値

"*"

解説

このプロパティの値は、ストアで一致する証明書を検索するために使用されます。検索プロセスは以下のように動作します。

  • サブジェクトに完全に一致する証明書が見つかれば、該当する証明書が選択されます。
  • 完全に一致するものがない場合、ストアは、サブジェクトがプロパティ値を含む証明書を検索します。
  • 一致する証明書がない場合、証明書は選択されません。

値を '*' に設定すると、ストアの先頭の証明書が自動的に選択されます。 証明書のサブジェクトは識別名フィールドおよび値のカンマ区切りのリストです。 例:CN=www.server.com, OU=test, C=US, [email protected]。

一般的なフィールドには以下のものが含まれます。

フィールド説明
CN共通名。一般的には、www.server.com のようなホスト名です。
O法人名
OU法人の部署名
L法人の住所(市町村名)
S法人の住所(都道府県)
C国名
EE メールアドレス

フィールド値にカンマが含まれる場合は、引用符で囲んでください。例:"O=ACME, Inc."。

CData Cloud

SSL

このセクションでは、本プロバイダーの接続文字列で設定可能なSSL プロパティの全リストを提供します。


プロパティ説明
SSLClientCertSSL クライアント認証(2-way SSL)のためのTLS/SSL クライアント証明書ストアを指定します。このプロパティは、他のSSL 関連プロパティと連動して、セキュアな接続を確立します。
SSLClientCertTypeSSL クライアント認証用のTLS/SSL クライアント証明書を格納するキーストアの種類を指定します。プラットフォームや証明書のソースに応じて、さまざまなキーストア形式から選択できます。
SSLClientCertPasswordTLS/SSL クライアント証明書ストアにアクセスするために必要なパスワードを指定します。選択した証明書ストアの種類がアクセスにパスワードを必要とする場合、このプロパティを使用します。
SSLClientCertSubjectTLS/SSL クライアント証明書のサブジェクトを指定し、証明書ストアで場所を検索します。 CN=www.server.com, C=US のように、識別名フィールドのカンマ区切りのリストを使用します。ワイルドカード * は、ストアの先頭の証明書を選択します。
SSLServerCertTLS/SSL を使用して接続する際に、サーバーが受け入れ可能な証明書を指定します。
CData Cloud

SSLClientCert

SSL クライアント認証(2-way SSL)のためのTLS/SSL クライアント証明書ストアを指定します。このプロパティは、他のSSL 関連プロパティと連動して、セキュアな接続を確立します。

データ型

string

デフォルト値

""

解説

このプロパティは、SSL クライアント認証のためのクライアント証明書ストアを指定します。 このプロパティは、証明書ストアの種類を定義するSSLClientCertType、およびパスワードで保護されたストア用のパスワードを指定するSSLClientCertPassword と一緒に使用します。 SSLClientCert が設定され、SSLClientCertSubject が設定されている場合、ドライバーは指定されたサブジェクトに一致する証明書を検索します。

証明書ストアの指定はプラットフォームによって異なります。 Windowsでは、証明書ストアはMY(個人証明書)などの名前で識別されますが、Java では、証明書ストアは通常、証明書とオプションの秘密キーを含むファイルです。

Windows の共通のユーザとシステム証明書ストアの指定は以下のとおりです。

MY個人証明書と関連付けられた秘密キーを格納している証明書ストア。
CA証明機関の証明書。
ROOTルート証明書。
SPCソフトウェア発行元証明書。

PFXFile タイプの場合、このプロパティをファイル名に設定します。PFXBlob タイプの場合は、このプロパティをPKCS12 形式のファイルのバイナリコンテンツに設定します。

CData Cloud

SSLClientCertType

SSL クライアント認証用のTLS/SSL クライアント証明書を格納するキーストアの種類を指定します。プラットフォームや証明書のソースに応じて、さまざまなキーストア形式から選択できます。

Possible Values

PFXBLOB, JKSBLOB, PEMKEY_BLOB, PUBLIC_KEY_BLOB, SSHPUBLIC_KEY_BLOB, XMLBLOB, BCFKSBLOB

データ型

string

デフォルト値

"PEMKEY_BLOB"

解説

このプロパティは、クライアント証明書を指定するために使用されるキーストアの形式と場所を決定します。 サポートされている値には、プラットフォーム固有およびユニバーサルなキーストア形式があります。 有効な値と使用方法は以下のとおりです。

USER - デフォルトWindows の場合、現在のユーザーにより所有された証明書ストアであることを指定します。この種類はJava では利用できませんので注意してください。
MACHINEWindows の場合、この証明書ストアがシステムストアであることを指定します。この種類はJava では利用できませんので注意してください。
PFXFILEこの証明書ストアは、証明書を含むPFX(PKCS12)ファイルの名前です。
PFXBLOBこの証明書ストアは、PFX(PKCS12)形式の証明書ストアを表すBase-64でエンコードされた文字列です。
JKSFILEこの証明書ストアは、証明書を含むJava key store(JKS)ファイルの名前です。この種類はJava でのみ利用できますので注意してください。
JKSBLOBこの証明書ストアは、Java key store(JKS)形式の証明書ストアを表すBase-64でエンコードされた文字列です。この種類はJava でのみ利用できますので注意してください。
PEMKEY_FILEこの証明書ストアは、秘密キーと任意の証明書を含むPEM でエンコードされたファイルの名前です。
PEMKEY_BLOBこの証明書ストアは、秘密キーと任意の証明書を含むBase-64でエンコードされた文字列です。
PUBLIC_KEY_FILEこの証明書ストアは、PEM またはDER でエンコードされた公開キーの証明書を含むファイルの名前です。
PUBLIC_KEY_BLOBこの証明書ストアは、PEM またはDER でエンコードされた公開キーの証明書を含むBase-64でエンコードされた文字列です。
SSHPUBLIC_KEY_FILEこの証明書ストアは、SSH 公開キーを含むファイルの名前です。
SSHPUBLIC_KEY_BLOBこの証明書ストアは、SSH 公開キーを含むBase-64でエンコードされた文字列です。
P7BFILEこの証明書ストアは、証明書を含むPKCS7 ファイルの名前です。
PPKFILEこの証明書ストアは、PuTTY 秘密キー(PPK)を含むファイルの名前です。
XMLFILEこの証明書ストアは、XML 形式の証明書を含むファイルの名前です。
XMLBLOBこの証明書ストアは、XML 形式の証明書を含む文字列の名前です。
BCFKSFILEこの証明書ストアは、Bouncy Castle キーストアを含むファイルの名前です。
BCFKSBLOBこの証明書ストアは、Bouncy Castle キーストアを含む文字列(Base-64エンコード)です。

CData Cloud

SSLClientCertPassword

TLS/SSL クライアント証明書ストアにアクセスするために必要なパスワードを指定します。選択した証明書ストアの種類がアクセスにパスワードを必要とする場合、このプロパティを使用します。

データ型

string

デフォルト値

""

解説

このプロパティは、パスワードで保護された証明書ストアを開くために必要なパスワードを指定します。 このプロパティは、PFX やJKS タイプのストアによく推奨されるように、復号化のためにパスワードを必要とする証明書ストアを使用する場合に必要です。

証明書ストアの種類がパスワードを必要としない場合(Windows のUSER やMACHINE など)、このプロパティは空白のままにできます。 認証エラーを回避するため、パスワードが指定された証明書ストアに関連付けられたものと一致していることを確認してください。

CData Cloud

SSLClientCertSubject

TLS/SSL クライアント証明書のサブジェクトを指定し、証明書ストアで場所を検索します。 CN=www.server.com, C=US のように、識別名フィールドのカンマ区切りのリストを使用します。ワイルドカード * は、ストアの先頭の証明書を選択します。

データ型

string

デフォルト値

"*"

解説

このプロパティは、サブジェクトに基づいてロードするクライアント証明書を決定します。Cloud は、指定されたサブジェクトに完全に一致する証明書を検索します。 完全に一致するものが見つからない場合、Cloud はサブジェクトの値を含む証明書を検索します。 一致する証明書がない場合、証明書は選択されません。

サブジェクトは、識別名フィールドと値のカンマ区切りリストという標準の形式に従うべきです。 例えば、CN=www.server.com, OU=Test, C=US です。一般的なフィールドには以下のものが含まれます。

フィールド説明
CN共通名。一般的には、www.server.com のようなホスト名です。
O法人名
OU法人の部署名
L法人の住所(市町村名)
S法人の住所(都道府県)
C国名
EE メールアドレス

Note: フィールドにカンマなどの特殊文字が含まれている場合は、値を引用符で囲む必要があります。例:CN="Example, Inc.", C=US。

CData Cloud

SSLServerCert

TLS/SSL を使用して接続する際に、サーバーが受け入れ可能な証明書を指定します。

データ型

string

デフォルト値

""

解説

TLS/SSL 接続を使用している場合は、このプロパティを使用して、サーバーが受け入れるTLS/SSL 証明書を指定できます。このプロパティに値を指定すると、マシンによって信頼されていない他の証明書はすべて拒否されます。

このプロパティは、次のフォームを取ります:

説明 例
フルPEM 証明書(例では省略されています) -----BEGIN CERTIFICATE-----
MIIChTCCAe4CAQAwDQYJKoZIhv......Qw==
-----END CERTIFICATE-----
証明書を保有するローカルファイルへのパス。 C:\cert.cer
公開鍵(例では省略されています) -----BEGIN RSA PUBLIC KEY-----
MIGfMA0GCSq......AQAB
-----END RSA PUBLIC KEY-----
MD5 Thumbprint(hex 値はスペースまたはコロン区切り) ecadbdda5a1529c58a1e9e09828d70e4
SHA1 Thumbprint(hex 値はスペースまたはコロン区切り) 34a929226ae0819f2ec14b4a3d904f801cbb150d

Note:'*' を使用してすべての証明書を受け入れるように指定することも可能ですが、セキュリティ上の懸念があるため推奨されません。

CData Cloud

Logging

このセクションでは、本プロバイダーの接続文字列で設定可能なLogging プロパティの全リストを提供します。


プロパティ説明
VerbosityログファイルのVerbosity レベルを指定し、記録される情報の詳細度を制御します。サポートされる値の範囲は1から5までです。
CData Cloud

Verbosity

ログファイルのVerbosity レベルを指定し、記録される情報の詳細度を制御します。サポートされる値の範囲は1から5までです。

データ型

string

デフォルト値

"1"

解説

このプロパティは、Cloud がログファイルに含める詳細レベルを定義します。 Verbosity レベルを高くするとログに記録される情報の詳細が増えますが、ログファイルが大きくなり取り込まれるデータが増えるためパフォーマンスが低下する可能性があります。

デフォルトのVerbosity レベルは1で、通常の運用にはこれが推奨されます。 より高いVerbosity レベルは主にデバッグを目的としています。 各レベルの詳細については、ログ を参照してください。

LogModules プロパティと組み合わせることで、Verbosity は特定の情報カテゴリに対するログの詳細度を調整できます。

CData Cloud

Schema

このセクションでは、本プロバイダーの接続文字列で設定可能なSchema プロパティの全リストを提供します。


プロパティ説明
BrowsableSchemasレポートされるスキーマを利用可能なすべてのスキーマのサブセットに制限するオプション設定。例えば、 BrowsableSchemas=SchemaA,SchemaB,SchemaC です。
Schema作業するAzure Cosmos DB データベースを指定します。
CData Cloud

BrowsableSchemas

レポートされるスキーマを利用可能なすべてのスキーマのサブセットに制限するオプション設定。例えば、 BrowsableSchemas=SchemaA,SchemaB,SchemaC です。

データ型

string

デフォルト値

""

解説

利用可能なデータベーススキーマをすべてリストすると余分な時間がかかり、パフォーマンスが低下します。 接続文字列にスキーマのリストを指定することで、時間を節約しパフォーマンスを向上させることができます。

CData Cloud

Schema

作業するAzure Cosmos DB データベースを指定します。

データ型

string

デフォルト値

""

解説

作業するAzure Cosmos DB データベースを指定します。

CData Cloud

Miscellaneous

このセクションでは、本プロバイダーの接続文字列で設定可能なMiscellaneous プロパティの全リストを提供します。


プロパティ説明
CalculateAggregates集計の計算値を返すか、パーティション範囲でグループ化するかを指定します。
ConsistencyLevelDenotes the type of token: master or resource.
FlattenArraysデフォルトで、ネスト配列はJSON 文字列として返されます。 FlattenArrays プロパティはネスト配列のエレメントをフラット化してそれぞれのカラムとするために使われます。ネスト配列から返すエレメントの数に FlattenArrays を設定します。
FlattenObjectsフラット化されたオブジェクトプロパティとしてカラムを表示するには、 FlattenObjects をtrue に設定します。そうでなければ、配列にネストされたオブジェクトはJSON 文字列として返されます。
ForceQueryOnNonIndexedContainersForce the use of an index scan to process the query if indexing is disabled or the right index path is not available.
MaxRows集計やGROUP BY を含まないクエリで返される最大行数を指定します。
MaxThreadsSpecifies the maximum number of concurrent requests for Batch CUD (Create, Update, Delete) operations.
MultiThreadCountパーティション化されたコレクション内の集計クエリでは、異なるパーティション範囲に対する並列リクエストが必要になります。このプロパティを、同時に発行する並列リクエストの数に設定します。
Pagesizeprovider がAzure Cosmos DB にデータをリクエストするときに返す、ページあたりの最大レコード数を指定します。
PseudoColumnsテーブルカラムとして公開する擬似カラムを、'TableName=ColumnName;TableName=ColumnName' の形式の文字列で指定します。
RequestPriorityLevelSpecifies the priority level for requests sent to Azure Cosmos DB when the number of requests exceeds the configured RU/s within a second.
RowScanDepthテーブルで利用可能なカラムを探すためにスキャンする行数の最大値。
SeparatorCharacter階層を示すために使用する記号。
SetPartitionKeyAsPKWhether or not to use the collection's Partition Key field as part of composite Primary Key for the corresponding exposed table.
Timeoutprovider がタイムアウトエラーを返すまでにサーバーからの応答を待機する最大時間を秒単位で指定します。
TypeDetectionScheme各ドキュメントコレクションのフィールドおよびデータタイプを決定するために、provider がデータをどのようにスキャンするかを示すカンマ区切りのオプション。
UseRidAsPkSet this property to false to switch using the id column as primary key instead the default _rid.
WriteThroughputBudgetDefines the Requests Units (RU) budget per Second that the Batch CUD (Create, Update, Delete) operations should not exceed.
CData Cloud

CalculateAggregates

集計の計算値を返すか、パーティション範囲でグループ化するかを指定します。

データ型

bool

デフォルト値

true

解説

集計の計算値を返すか、パーティション範囲でグループ化するかを指定します。

CData Cloud

ConsistencyLevel

Denotes the type of token: master or resource.

Possible Values

STRONG, BOUNDED, SESSION, CONSISTENTPREFIX, EVENTUAL

データ型

string

デフォルト値

"SESSION"

解説

The consistency level override for read options against documents and attachments. The valid values are: Strong, Bounded, Session, or Eventual (in order of strongest to weakest). The override must be the same or weaker than the account's configured consistency level.

The consistency level override for read options against documents and attachments. The valid values are: Strong, Bounded, Session, or Eventual (in order of strongest to weakest). The override must be the same or weaker than the account's configured consistency level.

CData Cloud

FlattenArrays

デフォルトで、ネスト配列はJSON 文字列として返されます。 FlattenArrays プロパティはネスト配列のエレメントをフラット化してそれぞれのカラムとするために使われます。ネスト配列から返すエレメントの数に FlattenArrays を設定します。

データ型

string

デフォルト値

"0"

解説

デフォルトで、ネスト配列はJSON 文字列として返されます。FlattenArrays プロパティはネスト配列のエレメントをフラット化してそれぞれのカラムとするために使われます。これは短い配列の場合にのみ推奨されます。

ネスト配列から返すエレメントの数にFlattenArrays を設定します。特定されたエレメントはカラムとして返されます。Zero-base のインデックスはカラム名にコンカテネートされます。他のエレメントは無視されます。

例えば、文字列の配列からエレメントのアービトラリー数を返すことができます。

["FLOW-MATIC","LISP","COBOL"]
FlattenArrays が1に設定されている場合、配列は次のテーブルのようにフラット化されます。

カラム名カラム値
languages.0FLOW-MATIC

FlattenArrays を-1 に設定すると、ネストされた配列のすべてのエレメントをフラット化します。

CData Cloud

FlattenObjects

フラット化されたオブジェクトプロパティとしてカラムを表示するには、 FlattenObjects をtrue に設定します。そうでなければ、配列にネストされたオブジェクトはJSON 文字列として返されます。

データ型

bool

デフォルト値

true

解説

フラット化されたオブジェクトプロパティとしてカラムを表示するには、FlattenObjects をtrue に設定します。そうでなければ、配列にネストされたオブジェクトはJSON 文字列として返されます。プロパティ名は、カラム名を作り出すためにオブジェクト名にドットでコンカティネイトされます。

例えば、次のネストされたオブジェクトをコネクションタイムでフラット化できます:

[
     { "grade": "A", "score": 2 },
     { "grade": "A", "score": 6 },
     { "grade": "A", "score": 10 },
     { "grade": "A", "score": 9 },
     { "grade": "B", "score": 14 }
]
FlattenObjects がtrue に設定されていて、FlattenArrays が1に設定されている場合、配列は次のテーブルのようにフラット化されます。

Column Nameカラム値
grades.0.gradeA
grades.0.score2

CData Cloud

ForceQueryOnNonIndexedContainers

Force the use of an index scan to process the query if indexing is disabled or the right index path is not available.

データ型

bool

デフォルト値

false

解説

Queries against containers where indexing is disabled or paths are excluded may fail. Set this property to true to force the use of indexing on the server so the query is processed successfully. By default, queries that require the use of indexing on containers where IndexingMode=None are handled client-side.

CData Cloud

MaxRows

集計やGROUP BY を含まないクエリで返される最大行数を指定します。

データ型

int

デフォルト値

-1

解説

このプロパティのデフォルト値である-1 は、クエリに明示的にLIMIT 句が含まれていない限り、行の制限が適用されないことを意味します。 (クエリにLIMIT 句が含まれている場合、クエリで指定された値がMaxRows 設定よりも優先されます。)

MaxRows を0より大きい整数に設定することで、クエリがデフォルトで過度に大きな結果セットを返さないようにします。

このプロパティは、非常に大きなデータセットを返す可能性のあるクエリを実行する際に、パフォーマンスを最適化し、過剰なリソース消費を防ぐのに役立ちます。

CData Cloud

MaxThreads

Specifies the maximum number of concurrent requests for Batch CUD (Create, Update, Delete) operations.

データ型

int

デフォルト値

200

解説

This property should be used in conjunction with the WriteThroughputBudget connection property. The Cloud may execute less parallel requests than the configured MaxThreads value, since it always aims to not exceed the WriteThroughputBudget limit. The number of concurrent requests will also depend on the running machine's resources.

Note: This property is applicable only when executing batch CUD operations.

CData Cloud

MultiThreadCount

パーティション化されたコレクション内の集計クエリでは、異なるパーティション範囲に対する並列リクエストが必要になります。このプロパティを、同時に発行する並列リクエストの数に設定します。

データ型

string

デフォルト値

"5"

解説

パーティション化されたコレクション内の集計クエリでは、異なるパーティション範囲に対する並列リクエストが必要になります。このプロパティを、同時に発行する並列リクエストの数に設定します。

CData Cloud

Pagesize

provider がAzure Cosmos DB にデータをリクエストするときに返す、ページあたりの最大レコード数を指定します。

データ型

int

デフォルト値

1000

解説

クエリを処理する際、Azure Cosmos DB でクエリされたデータすべてを一度にリクエストする代わりに、Cloud はクエリされたデータをページと呼ばれる部分ごとにリクエストすることができます。

この接続プロパティは、Cloud がページごとにリクエストする結果の最大数を決定します。

Note:大きなページサイズを設定すると全体的なクエリ実行時間が短縮される可能性がありますが、その場合、クエリ実行時にCloud がより多くのメモリを使用することになり、タイムアウトが発生するリスクがあります。

CData Cloud

PseudoColumns

テーブルカラムとして公開する擬似カラムを、'TableName=ColumnName;TableName=ColumnName' の形式の文字列で指定します。

データ型

string

デフォルト値

""

解説

このプロパティを使用すると、Cloud がテーブルカラムとして公開する擬似カラムを定義できます。

個々の擬似カラムを指定するには、以下の形式を使用します。

Table1=Column1;Table1=Column2;Table2=Column3

すべてのテーブルのすべての擬似カラムを含めるには、次を使用してください:

*=*

CData Cloud

RequestPriorityLevel

Specifies the priority level for requests sent to Azure Cosmos DB when the number of requests exceeds the configured RU/s within a second.

Possible Values

None, Low, High

データ型

string

デフォルト値

"None"

解説

  • None: Sends requests with the default priority.
  • Low: Sends requests with low priority.
  • High: Sends requests with high priority.

CData Cloud

RowScanDepth

テーブルで利用可能なカラムを探すためにスキャンする行数の最大値。

データ型

int

デフォルト値

100

解説

テーブルのカラムはテーブル行をスキャンすることで決定される必要があります。この値はスキャンされる行数の最大値を設定します。

大きい値を設定すると、パフォーマンスが低下する場合があります。小さい値を設定すると、特にnull データがある場合には、データ型を正しく判定できない場合があります。

CData Cloud

SeparatorCharacter

階層を示すために使用する記号。

データ型

string

デフォルト値

"."

解説

階層構造をフラット化するために、Cloud には階層を通るカラムへのパスを表す指定子が必要です。この値が"." の場合、カラムがaddress.city という名前で返されたときには、city という名の子がマップされた属性であることを示します。 データにすでにピリオドを属性名として使っているカラムが存在する場合には、記号を区別するためにSeparatorCharacter を設定してください。

CData Cloud

SetPartitionKeyAsPK

Whether or not to use the collection's Partition Key field as part of composite Primary Key for the corresponding exposed table.

データ型

bool

デフォルト値

true

解説

By default, this is set to TRUE, and the collection's Partition Key is used as part of the table's composite Primary Key along with the _rid column. If this is set to FALSE, only the _rid column will serve as the Primary Key for the exposed table.

CData Cloud

Timeout

provider がタイムアウトエラーを返すまでにサーバーからの応答を待機する最大時間を秒単位で指定します。

データ型

int

デフォルト値

60

解説

タイムアウトは、クエリや操作全体ではなくサーバーとの個々の通信に適用されます。 例えば、各ページング呼び出しがタイムアウト制限内に完了する場合、クエリは60秒を超えて実行を続けることができます。

タイムアウトはデフォルトで60秒に設定されています。タイムアウトを無効にするには、このプロパティを0に設定します。

タイムアウトを無効にすると、操作が成功するか、サーバー側のタイムアウト、ネットワークの中断、またはサーバーのリソース制限などの他の条件で失敗するまで無期限に実行されます。

Note: このプロパティは慎重に使用してください。長時間実行される操作がパフォーマンスを低下させたり、応答しなくなる可能性があるためです。

CData Cloud

TypeDetectionScheme

各ドキュメントコレクションのフィールドおよびデータタイプを決定するために、provider がデータをどのようにスキャンするかを示すカンマ区切りのオプション。

データ型

string

デフォルト値

"RowScan,Recent"

解説

NoneTypeDetectionScheme をNone に設定した場合は、すべてのカラムは文字列型で返されます。他のオプションとの併用はできません。
RowScanTypeDetectionScheme をRowScan に設定した場合には、ヒューリスティックにデータ型を決定します。RowScanDepth ではスキャンする行数を決定します。Recent と一緒に使用できます。
RecentTypeDetectionScheme をRecent に設定すると、コレクション内の直近のドキュメントでRowScan を実行するかどうかを決定します。RowScan と一緒に使用できます。
RawValueSetting TypeDetectionScheme to RawValue will push each document as single aggregate on a column named JsonData, along with its resource identifier on the separate Primary Key column. Cannot be combined with other options.

CData Cloud

UseRidAsPk

Set this property to false to switch using the id column as primary key instead the default _rid.

データ型

bool

デフォルト値

true

解説

Since CosmosDB allows you to use both _rid and id fields as unique values for retrieving resource data, you can set this property to false to switch using the id column as primary key instead the default _rid.

CData Cloud

WriteThroughputBudget

Defines the Requests Units (RU) budget per Second that the Batch CUD (Create, Update, Delete) operations should not exceed.

データ型

int

デフォルト値

1000

解説

The Cloud will dynamically adjust the maximum number of requests per second depending on the configured RU budget. Although the Cloud always aims to not exceed the RU budget, since the requests throttling logic is applied client-side, it may be exceeded by a relatively small amount in a few cases. These cases include inserting, updating and deleting records with highly variable column count and input value length per column.

Note: This property is applicable only when executing batch CUD operations.

CData Cloud

Third Party Copyrights

LZMA from 7Zip LZMA SDK

LZMA SDK is placed in the public domain.

Anyone is free to copy, modify, publish, use, compile, sell, or distribute the original LZMA SDK code, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means.

LZMA2 from XZ SDK

Version 1.9 and older are in the public domain.

Xamarin.Forms

Xamarin SDK

The MIT License (MIT)

Copyright (c) .NET Foundation Contributors

All rights reserved.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

NSIS 3.10

Copyright (C) 1999-2025 Contributors THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS COMMON PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.

1. DEFINITIONS

"Contribution" means:

a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and b) in the case of each subsequent Contributor:

i) changes to the Program, and

ii) additions to the Program;

where such changes and/or additions to the Program originate from and are distributed by that particular Contributor. A Contribution 'originates' from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor's behalf. Contributions do not include additions to the Program which: (i) are separate modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not derivative works of the Program.

"Contributor" means any person or entity that distributes the Program.

"Licensed Patents " mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of its Contribution alone or when combined with the Program.

"Program" means the Contributions distributed in accordance with this Agreement.

"Recipient" means anyone who receives the Program under this Agreement, including all Contributors.

2. GRANT OF RIGHTS

a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code form.

b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder.

c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the Program, it is Recipient's responsibility to acquire that license before distributing the Program.

d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement.

3. REQUIREMENTS

A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that:

a) it complies with the terms and conditions of this Agreement; and

b) its license agreement:

i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose;

ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special, incidental and consequential damages, such as lost profits;

iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any other party; and

iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it in a reasonable manner on or through a medium customarily used for software exchange.

When the Program is made available in source code form:

a) it must be made available under this Agreement; and

b) a copy of this Agreement must be included with each copy of the Program.

Contributors may not remove or alter any copyright notices contained within the Program.

Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows subsequent Recipients to identify the originator of the Contribution.

4. COMMERCIAL DISTRIBUTION

Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes the Program in a commercial product offering should do so in a manner which does not create potential liability for other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor ("Commercial Contributor") hereby agrees to defend and indemnify every other Contributor ("Indemnified Contributor") against any losses, damages and costs (collectively "Losses") arising from claims, lawsuits and other legal actions brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may participate in any such claim at its own expense.

For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties related to Product X, those performance claims and warranties are such Commercial Contributor's responsibility alone. Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result, the Commercial Contributor must pay those damages.

5. NO WARRANTY

EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the appropriateness of using and distributing the Program and assumes all risks associated with its exercise of rights under this Agreement, including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations.

6. DISCLAIMER OF LIABILITY

EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

7. GENERAL

If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.

If Recipient institutes patent litigation against a Contributor with respect to a patent applicable to software (including a cross-claim or counterclaim in a lawsuit), then any patent licenses granted by that Contributor to such Recipient under this Agreement shall terminate as of the date such litigation is filed. In addition, if Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such litigation is filed.

All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution of the Program as soon as reasonably practicable. However, Recipient's obligations under this Agreement and any licenses granted by Recipient relating to the Program shall continue and survive.

Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the right to modify this Agreement. IBM is the initial Agreement Steward. IBM may assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the Agreement will be given a distinguishing version number. The Program (including Contributions) may always be distributed subject to the version of the Agreement under which it was received. In addition, after a new version of the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or otherwise. All rights in the Program not expressly granted under this Agreement are reserved.

This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause of action arose. Each party waives its rights to a jury trial in any resulting litigation.

Copyright (c) 2025 CData Software, Inc. - All rights reserved.
Build 25.0.9434