Cloud

Build 22.0.8322
  • Amazon S3
      • Amazon S3 データのストリーミング
    • はじめに
      • 接続の確立
      • Wasabi への接続
      • IAM 最小権限
      • 変更履歴
    • 高度な機能
      • ユーザー定義ビュー
      • SSL の設定
      • ファイアウォールとプロキシ
      • データのキャッシュ
        • キャッシュ接続の設定
        • メタデータのキャッシュ
        • データの自動キャッシュ
        • 明示的なデータのキャッシュ
        • データ型マッピング
      • クエリ処理
      • ログ
    • SQL 準拠
      • SELECT ステートメント
        • 集計関数
        • JOIN クエリ
        • 日付リテラル関数
      • SELECT INTO ステートメント
      • SQL 関数
        • 文字列関数
        • 日付関数
        • 算術関数
      • CACHE ステートメント
      • EXECUTE ステートメント
      • PIVOT およびUNPIVOT
    • データモデル
      • テーブル
        • Buckets
        • Objects
      • ビュー
        • BucketsACL
        • BucketsAnalytics
        • BucketsCompliance
        • BucketsCORS
        • BucketsInventory
        • BucketsLifecycle
        • BucketsReplication
        • ObjectsACL
        • ObjectsCompliance
        • PublicAccessBlock
      • ストアドプロシージャ
        • CopyObject
        • DownloadObjects
        • UploadObject
      • システムテーブル
        • sys_catalogs
        • sys_schemas
        • sys_tables
        • sys_tablecolumns
        • sys_procedures
        • sys_procedureparameters
        • sys_keycolumns
        • sys_foreignkeys
        • sys_indexes
        • sys_connection_props
        • sys_sqlinfo
        • sys_identity
    • 接続文字列オプション
      • Connection
        • CustomURL
        • SimpleUploadLimit
        • UseVirtualHosting
      • AWS Authentication
        • AuthScheme
        • AWSAccessKey
        • AWSSecretKey
        • AWSRoleARN
        • AWSPrincipalARN
        • AWSRegion
        • AWSSessionToken
        • AWSExternalId
        • MFASerialNumber
        • MFAToken
        • TemporaryTokenDuration
        • AWSCognitoRegion
        • AWSUserPoolId
        • AWSUserPoolClientAppId
        • AWSUserPoolClientAppSecret
        • AWSIdentityPoolId
        • ServerSideEncryption
      • SSO
        • User
        • Password
        • SSOLoginURL
        • SSOProperties
        • SSOExchangeUrl
      • SSL
        • SSLServerCert
      • Firewall
        • FirewallType
        • FirewallServer
        • FirewallPort
        • FirewallUser
        • FirewallPassword
      • Proxy
        • ProxyAutoDetect
        • ProxyServer
        • ProxyPort
        • ProxyAuthScheme
        • ProxyUser
        • ProxyPassword
        • ProxySSLType
        • ProxyExceptions
      • Logging
        • Logfile
        • Verbosity
        • LogModules
        • MaxLogFileSize
        • MaxLogFileCount
      • Schema
        • Location
        • BrowsableSchemas
        • Tables
        • Views
      • Caching
        • AutoCache
        • CacheLocation
        • CacheTolerance
        • Offline
        • CacheMetadata
      • Miscellaneous
        • CreateFoldersOnDownload
        • EncodeFilename
        • MaxRows
        • MaxThreads
        • Other
        • PseudoColumns
        • RTK
        • Timeout
        • UserDefinedViews

CData Cloud

Overview

CData Cloud offers access to Amazon S3 across several standard services and protocols, in a cloud-hosted solution. Any application that can connect to a MySQL or SQL Server database can connect to Amazon S3 through CData Cloud.

CData Cloud allows you to standardize and configure connections to Amazon S3 as though it were any other OData endpoint, or standard SQL Server/MySQL database.

Key Features

  • Full SQL Support: Amazon S3 appears as standard relational databases, allowing you to perform operations - Filter, Group, Join, etc. - using standard SQL, regardless of whether these operations are supported by the underlying API.
  • CRUD Support: Both read and write operations are supported, restricted only by security settings that you can configure in Cloud or downstream in the source itself.
  • Secure Access: The administrator can create users and define their access to specific databases and read-only operations or grant full read & write privileges.
  • Comprehensive Data Model & Dynamic Discovery: CData Cloud provides comprehensive access to all of the data exposed in the underlying data source, including full access to dynamic data and easily searchable metadata.

CData Cloud

Amazon S3 データのストリーミング

CData Cloud は、Amazon S3 メタデータのナビゲーション専用にデザインされています。Amazon S3 データに関連するさまざまなストアドプロシージャもサポートされています。

このメタデーには通常、ファイル名やフォルダ名など、保存されているオブジェクトに関する詳細が含まれ、発見可能なファイルの実際のコンテンツは含まれていません。

ファイルのメタデータとファイルの実際のコンテンツの両方にアクセスする必要がある場合は、CData Cloud は、Amazon S3 に格納されているファイルの種類に関連するファイルストリーミングドライバーと併せて使用する必要があります。

以下のファイルストリーミングドライバーが利用可能です。

  • Avro
  • CSV
  • Excel
  • JSON
  • Parquet
  • REST
  • XML

Amazon S3 に保存されているファイルに接続するための設定方法については、関連するCData ファイルストリーミングドライバーのドキュメントを参照してください。

CData Cloud

はじめに

This page provides a guide to 接続の確立 to Amazon S3 in CData Cloud, as well as information on the available resources, and a reference to the available connection properties.

Connecting to Amazon S3

接続の確立 shows how to authenticate to Amazon S3 and configure any necessary connection properties to create a database in CData Cloud

Accessing Data from CData Cloud Services

Accessing data from Amazon S3 through the available standard services and CData Cloud administration is documented in further details in the CData Cloud Documentation.

CData Cloud

接続の確立

Connect to Amazon S3 by selecting the corresponding icon in the Database tab. Required properties are listed under Settings. The Advanced tab lists connection properties that are not typically required.

Connecting to Amazon S3

Specify the following to connect to data:

  • CustomURL: Specify the base S3 service URL if it has a different URL from 'amazonaws.com'. Make sure to specify the full URL. For example: 'http://127.0.0.1:9000'.
  • AWSRegion: Set this to the region where your Amazon S3 data is hosted.

Authenticating to Amazon S3

There are several authentication methods available for connecting to Amazon S3 including: authenticating with Root Credentials, Temporary Credentials, as an AWS Role (from an EC2 Instance or by specifying the root credentials), using SSO and using a Credential File.

アクセスキーの取得

IAM ユーザーの資格情報を取得するには、以下の手順に従ってください。

  1. IAM コンソールにサインインします。
  2. ナビゲーションペインで[ユーザー]を選択します。
  3. ユーザーのアクセスキーを作成または管理するには、ユーザーを選択してから[セキュリティ認証情報]タブを選択します。

AWS ルートアカウントの資格情報を取得するには、以下の手順に従ってください。

  1. ルートアカウントの資格情報を使用してAWS 管理コンソールにサインインします。
  2. アカウント名または番号を選択し、表示されたメニューで[My Security Credentials]を選択します。
  3. [Continue to Security Credentials]をクリックし、[Access Keys]セクションを展開して、ルートアカウントのアクセスキーを管理または作成します。

Root 資格情報による認証

アカウントのルート資格情報で認証するには、次を設定します。

  • AuthScheme:AwsRootKeys に設定。
  • AWSAccessKey:AWS ルートアカウントに紐づいているアクセスキー。
  • AWSSecretKey:AWS ルートアカウントに紐づいているシークレットキー。

Note: この認証スキームの使用は、簡単なテスト以外ではAmazon では推奨されていません。アカウントのルート資格情報はユーザーの完全な権限を持つため、これが最も安全性の低い認証方法になります。

一時的認証情報による認証

一時的認証情報で認証するには、次を設定します。

  • AuthScheme:TemporaryCredentials に設定。
  • AWSAccessKey:ロールを担うIAM ユーザーのアクセスキー。
  • AWSSecretKey:ロールを担うIAM ユーザーのシークレットキー。
  • AWSSessionToken:AWS のセッショントークン。これは一時的認証情報とともに提供されます。詳しくは、this link を参照してください。

Cloud は、一時的認証情報の有効期間中、長期的な認証情報(IAM ユーザー認証情報など)によって提供されるものと同じ権限を使用してリソースをリクエストできるようになりました。

認証にIAM ロールも使用している場合は、さらに以下を指定する必要があります。

  • AWSRoleARN:認証したいロールのRole ARN を指定。これにより、Cloud は指定されたロールの資格情報を 取得しようと試みます。
  • AWSExternalId:別のアカウントでロールを引き受ける場合にのみ必要です。

EC2 インスタンスからの認証

EC2 インスタンスからCloud を使用していて、そのインスタンスにIAM ロールが割り当てられている場合は、 認証にIAM ロールを使用できます。これを行うには、次のプロパティを設定して認証します。

  • AuthScheme:AwsEC2Roles に設定。
AWSAccessKey およびAWSSecretKey は指定しないでください。Cloud は自動的にIAM ロールの認証情報を取得し、それらを使って認証します。

認証にIAM ロールも使用している場合は、さらに以下を指定する必要があります。

  • AWSRoleARN:認証したいロールのRole ARN を指定。これにより、Cloud は指定されたロールの資格情報を 取得しようと試みます。
  • AWSExternalId:別のアカウントでロールを引き受ける場合にのみ必要です。

IMDSv2 サポート

Amazon S3 Cloud は、IMDSv2 をサポートしています。IMDSv1 と異なり、新しいバージョンでは認証トークンが必要です。エンドポイントおよびレスポンスは、両バージョンで同じです。 IMDSv2 では、Amazon S3 Cloud はまずIMDSv2 メタデータトークンの取得を試み、それを使用してAWS メタデータエンドポイントを呼び出します。 トークンを取得できない場合、Cloud はIMDSv1 を使用します。

AWS ロールとして認証

多くの場合、認証にはAWS ルートユーザーのダイレクトなセキュリティ認証情報ではなく、IAM ロールを使用することをお勧めします。

AWS ロールとして認証するには、次を設定します。

  • AuthScheme:AwsIAMRoles に設定。
  • AWSRoleARN:認証したいロールのRole ARN を指定。これにより、Cloud は指定されたロールの資格情報を 取得しようと試みます。
  • AWSExternalId:別のアカウントでロールを引き受ける場合にのみ必要です。
  • AWSAccessKey:ロールを担うIAM ユーザーのアクセスキー。
  • AWSSecretKey:ロールを担うIAM ユーザーのシークレットキー。

Note: AWS ルートユーザーのAWSAccessKey およびAWSSecretKey を指定する場合、ロールは使用できません。

ADFS

AuthScheme をADFS に設定します。次の接続プロパティを設定する必要があります。

  • User:ADFS ユーザー名に設定。
  • Password:ADFS パスワードに設定。
  • SSOLoginURL:SSO プロバイダーが使用するログインURL に設定。
以下は接続文字列の例です。
AuthScheme=ADFS; AWSRegion=Ireland; [email protected]; Password=CH8WerW121235647iCa6; SSOLoginURL='https://adfs.domain.com'; AWSRoleArn=arn:aws:iam::1234:role/ADFS_SSO; AWSPrincipalArn=arn:aws:iam::1234:saml-provider/ADFSProvider;

ADFS 統合

To use the ADFS Integrated flow, specify the SSOLoginURL and leave the username and password empty.

Okta

AuthScheme をOkta に設定します。Okta を介した認証には、次の接続プロパティを使用します。

  • User:Okta ユーザーに設定。
  • Password:Okta パスワードに設定。
  • SSOLoginURL:SSO プロバイダーが使用するログインURL に設定。
Okta を使用して認証するには、次のSSOProperties を使用します。
  • APIToken(オプション):顧客がOkta 組織から作成したAPI Token に設定。Okta クライアントリクエストコンテキストを上書きする、信頼されたアプリケーションまたはプロキシ経由でユーザーを認証する場合に使用してください。
  • MFAType(オプション):MFA フローを設定した場合にのみ設定。現時点では、次のタイプのみをサポートしています:OktaVerify、Email、およびSMS。
  • MFAPassCode(オプション):MFA フローを設定した場合にのみ設定。If this is set to empty or invalid the driver issues a one-time password challenge to your device or email.Once the passcode is received, reopen the connection where the retrieved one-time password value is set to the MFAPassCode connection property.

接続文字列の例:

AuthScheme=Okta; AWSRegion=Ireland; [email protected]; Password=CH8WerW121235647iCa6; SSOLoginURL='https://cdata-us.okta.com/home/amazon_aws/0oa35m8arsAL5f5NrE6NdA356/272'; SSOProperties='ApiToken=01230GGG2ceAnm_tPAf4MhiMELXZ0L0N1pAYrO1VR-hGQSf;'; AWSRoleArn=arn:aws:iam::1234:role/Okta_SSO; AWSPrincipalARN=arn:aws:iam::1234:saml-provider/OktaProvider;

PingFederate 認証

AuthScheme をPingFederate に設定します。次の接続プロパティを設定する必要があります。

  • User:PingFederate ユーザーに設定。
  • Password:ユーザーのPingFederate パスワードに設定。
  • SSOLoginURL:SSO プロバイダーが使用するログインURL に設定。
  • SSOExchangeUrl: The 'Partner Service Identifier' URI configured in your PingFederate server instance under: SP Connections > SP Connection > WS-Trust > Protocol Settings. This should uniquely identify a PingFederate SP Connection, so it is a good idea to set it to your 'AWS SSO ACS URL'. You can find it under AWS SSO > Settings > Click on 'View Details' next to the Authentication field.
次のSSOProperties がPingFederate への認証に必要です。
  • AuthScheme(オプション):IdP エンドポイントに使われる認可スキーム。IdP にはNone またはBasic が使用可能です。
追加で次のSSOProperties を使って、SSOLoginURL 用の相互SSL 認証(WS-Trust STS エンドポイント)の設定が可能です。
  • SSLClientCert
  • SSLClientCertType
  • SSLClientCertSubject
  • SSLClientCertPassword
以下は接続文字列の例です。
authScheme=pingfederate;SSOLoginURL=https://mycustomserver.com:9033/idp/sts.wst;SSOExchangeUrl=https://us-east-1.signin.aws.amazon.com/platform/saml/acs/764ef411-xxxxxx;user=admin;password=PassValue;AWSPrincipalARN=arn:aws:iam::215338515180:saml-provider/pingFederate;AWSRoleArn=arn:aws:iam::215338515180:role/SSOTest2;

MFA 認証

多要素認証を必要とするユーザーおよびロールには、以下を指定して認証してください。

  • AuthScheme:AwsMFA に設定。
  • CredentialsLocation:MFA クレデンシャルが保存される設定ファイルの場所。詳しくは、接続文字列オプションのCredentials File Location のページを参照してください。
  • MFASerialNumber:MFA デバイスが使用されている場合は、そのシリアル番号。
  • MFAToken:MFA デバイスから利用できる一時トークン。
(すでにEC2 インスタンスなどで接続されているのではなく)AWS に接続している場合は、追加で以下を指定する必要があります。
  • AWSAccessKey:MFA が発行されるIAM ユーザーのアクセスキー。
  • AWSSecretKey:MFA が発行されるIAM ユーザーのシークレットキー。
認証にIAM ロールも使用している場合は、さらに以下を指定する必要があります。
  • AWSRoleARN:認証したいロールのRole ARN を指定。これにより、Cloud はMFA を使用して指定されたロールの資格情報を 取得しようと試みます。
  • AWSExternalId: Only if required when you assume a role in another account.
これにより、Cloud は一時的な認証資格情報を取得するために、リクエストでMFA 認証情報を送信します。

一時的な認証情報の有効期間(デフォルトは3600秒)は、TemporaryTokenDuration プロパティを介して制御できます。

クレデンシャルファイルによる認証

認証にはクレデンシャルファイルを使用することができます。AccessKey/SecretKey 認証、一時クレデンシャル、ロール認証、またはMFA に関連するすべての設定が使用されます。 これを行うには、次のプロパティを設定して認証します。

  • AuthScheme:AwsCredentialsFileに設定。
  • AWSCredentialsFile:クレデンシャルファイルの場所を設定。
  • AWSCredentialsFileProfile:オプションで、指定したクレデンシャルファイルから使用するプロファイルの名前を設定。指定しない場合は、default という名前のプロファイルが使用されます。
詳しくは、this link を参照してください。

AWS Cognito 認証情報による認証

AWS Cognito のユーザープールに登録されたユーザーでCloud を使用する場合は、以下のプロパティを設定して認証してください。

  • AuthScheme:AwsCognitoSrp に設定(推奨)。また、AwsCognitoBasic を使用することもできます。
  • AWSCognitoRegion:ユーザープールのリージョンを設定。
  • AWSUserPoolId:ユーザープールのID を設定。
  • AWSUserPoolClientAppId:ユーザープールのアプリクライアントID を設定。
  • AWSUserPoolClientAppSecret:ユーザープールのクライアントシークレットを設定。
  • AWSIdentityPoolId:ユーザープールとリンクしているID プールのID を設定。
  • User:ユーザープールに登録されているユーザーのユーザー名を設定。
  • Password:ユーザープールに登録されているユーザーのパスワードを設定。

CData Cloud

Wasabi への接続

Connecting to Wasabi

To connect to Wasabi set AccessKey and SecretKey in the connection string.

To refine data access, set the Region to where your Wasabi data is hosted.

Custom URL

CustomURL should be created in this specific form:

https://s3.region.wasabisys.com/;

For more on regions, see Wasabi Regions URL

Obtaining the Access Key

  1. Sign in to the Wasabi console.
  2. To create or manage the access keys for a user, select the Access Keys tab.
  3. Click Create New Access Key and use the credentials displayed to authenticate to Wasabi services.

CData Cloud

IAM 最小権限

We recommend using predefined roles for services rather than creating custom IAM policies, but if you want to create custom polices, use the roles described in the table below. Note that the specific policies required by the Amazon S3 driver are subject to change in future releases.

Amazon S3 requires at a minimum the following permissions:


IAM RoleDescription
Tables: Buckets
SELECTListAllMyBuckets
INSERTCreateBucket
DELETEGetBucketLocation and DeleteBucket
Tables: Objects
SELECTGetBucketLocation and ListBucket
DELETEGetBucketLocation and DeleteObject
Views
(All views require GetBucketLocation
in addition to the permission listed below)
BucketsACLListBucket
BucketsAnalyticsGetAnalyticsConfiguration
BucketsCORSGetBucketCORS
BucketsInventoryGetInventoryConfiguration
BucketsLifeCycleGetLifecycleConfiguration
BucketsReplicationGetReplicationConfiguration
ObjectsACLGetObjectAcl
PublicAccessBlockGetBucketPublicAccessBlock
Stored Procedures
(All procedures require GetBucketLocation
in addition to the permission listed below)
CopyObjectGetObject at source bucket and PutObject at destination bucket
DownloadObjectTorrentGetObjectTorrent
DownloadObjectsGetObject
UploadObjects PutObject

JSON Example

A JSON version of a minimum permissions policy for full driver functionality is shown below.
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "s3:GetBucketPublicAccessBlock",
                "s3:GetLifecycleConfiguration",
                "s3:GetInventoryConfiguration",
                "s3:CreateBucket",
                "s3:ListBucket",
                "s3:GetReplicationConfiguration",
                "s3:PutObject",
                "s3:GetObjectAcl",
                "s3:GetObject",
                "s3:GetObjectTorrent",
                "s3:ListAllMyBuckets",
                "s3:GetBucketCORS",
                "s3:GetAnalyticsConfiguration",
                "s3:DeleteObject",
                "s3:GetBucketLocation",
                "s3:DeleteBucket"
            ],
            "Resource": "*"
        }
    ]"
}
In the above example, "Resource" is set to * to allow access to all buckets, but you can limit access to only one specific bucket.

CData Cloud

変更履歴

General Changes

DateBuild
Number
Change
Type
Description
09/01/20228279Amazon S3Removed
  • Removed the DownloadObjectTorrent store procedure.
08/30/20228277Amazon S3Added
  • Added support for uploading server-side encrypted objects via the ServerSideEncryption connection property.
08/17/20228264GeneralChanged
  • We now support handling the keyword "COLLATE" as standard function name as well.
05/05/20228160Amazon S3Added
  • Added the BucketsCompliance and ObjectsCompliance tables.
03/16/20228110Amazon S3Added
  • Added support for Instance Metadata Service Version 2 (IMDSv2) when authenticating from an Amazon EC2 instance.
03/01/20228095Amazon S3Added
  • Added support for the AwsCognitoBasic and AwsCognitoSrp authentication methods.
09/02/20217915GeneralAdded
  • Added support for the STRING_SPLIT table-valued function in the CROSS APPLY clause.
08/07/20217889GeneralChanged
  • Add the KeySeq column to the sys_foreignkeys table.
08/06/20217888GeneralChanged
  • Add the new sys_primarykeys system table.
07/23/20217874GeneralChanged
  • Updated the Literal Function Names for relative date/datetime functions. Previously relative date/datetime functions resolved to a different value when used in the projection vs te predicate. Ie: SELECT LAST_MONTH() AS lm, Col FROM Table WHERE Col > LAST_MONTH(). Formerly the two LAST_MONTH() methods would resolve to different datetimes. Now they will match.
  • As a replacement for the previous behavior, the relative date/datetime functions in the criteria may have an 'L' appended to them. Ie: WHERE col > L_LAST_MONTH(). This will continue to resolve to the same values that previously were calculated in the criteria. Note that the "L_" prefix will only work in the predicate - it not available for the projection.
07/23/20217874Amazon S3Added
  • Added multi-thread multi-part upload support for the UploadObject procedure. Set the value of the ChunkSize to -1 if you want to disable the multi part logic.

Removed
  • Removed the SimpleUploadLimit connection property. We will perform multi-part upload by default in the UploadObject procedure. The number of parallel calls can be controlled by the MaxThreads connection property.
07/08/20217859GeneralAdded
  • Added the TCP Logging Module for the logging information happening on the TCP wire protocol. The transport bytes that are incoming and ongoing will be logged at verbosity=5.
05/17/20217807Amazon S3Added
  • Added support for Single Sign On (SSO) connection with PingFederate as the Identity Provider (IdP).
04/23/20217785GeneralAdded
  • Added support for handling client side formulas during insert / update. For example: UPDATE Table SET Col1 = Concat(Col1, " - ", Col2) WHERE Col2 LIKE 'A%'
04/23/20217783GeneralChanged
  • Updated how display sizes are determined for varchar primary key and foreign key columns so they will match the reported length of the column.
04/16/20217776GeneralAdded
  • Non-conditional updates between two columns is now available to all drivers. For example: UPDATE Table SET Col1=Col2

Changed
  • Reduced the length to 255 for varchar primary key and foreign key columns.
  • Updated implicit and metadata caching to improve performance and support for multiple connections. Old metadata caches are not compatible - you would need to generate new metadata caches if you are currently using CacheMetadata.
  • Updated index naming convention to avoid duplicates
  • Updated and standardized Getting Started connection help.
  • Added the Advanced Features section to the help of all drivers.
  • Categorized connection property listings in the help for all editions.
04/15 /20217775GeneralChanged
  • Kerberos authentication is updated to use TCP by default, but will fall back to UDP if a TCP connection cannot be established

CData Cloud

高度な機能

このセクションでは、Amazon S3 Cloud の高度な機能を厳選して説明します。

ユーザー定義ビュー

Cloud を使用すると、事前設定されたクエリによって内容が決定されるユーザー定義ビューと呼ばれる仮想テーブルを定義できます。 このビューは、ドライバーに発行されるクエリを直接制御できない場合に有効です。 カスタムビューの作成と設定の概要については、ユーザー定義ビュー を参照してください。

SSL の設定

SSL の設定 を使用して、Cloud が証明書のネゴシエーションをどのように扱うかを調整します。さまざまな証明書形式を選択できます。 詳しくは、接続文字列オプションにあるSSLServerCert プロパティを参照してください。

ファイアウォールとプロキシ

Windows プロキシとHTTP プロキシを含むファイアウォールとプロキシ に合致するようCloud を設定します。トンネル接続を設定することもできます。

クエリ処理

Cloud は、Amazon S3 にできるだけ多くのSELECT ステートメント処理をオフロードし、残りのクエリをクライアント側のインメモリで処理します。

ログ

CData ログを調整するために使用可能な設定の概要については、ログ を参照してください。基本的なロギングでは、 次の2つの接続プロパティを設定するだけです。LogModules 接続プロパティを使用してログに記録する情報のサブセットを選択できる、 より洗練されたロギングをサポートする多数の機能があります。

CData Cloud

ユーザー定義ビュー

CData Cloud を使用すると、事前設定されたクエリによって内容が決定される仮想テーブルを定義できます。これらはユーザー定義ビューと呼ばれ、ツール からドライバーを使用する場合など、ドライバーに発行されるクエリを直接制御できない場合に役立ちます。 ユーザー定義ビューを使用して、常に適用されるプレディケートを定義することができます。ビューへのクエリで追加のプレディケートを指定すると、それらはビューの一部としてすでに定義されているクエリと結合されます。

ユーザー定義ビューを作成する方法は2つあります。

  • 必要なビューを定義したJSON 形式のコンフィギュレーションファイルを作成。

コンフィギュレーションファイルでビューの定義

ユーザー定義ビューは、UserDefinedViews.json というJSON 形式のコンフィギュレーションファイルで定義されています。Cloud は、このファイルで指定されたビューを自動的に検出します。

また、複数のビュー定義を持ち、UserDefinedViews 接続プロパティを使用して制御することも可能です。このプロパティを使用すると、指定されたビューのみがCloud によって検知されます。

このユーザー定義ビューのコンフィギュレーションファイルは、次のようにフォーマットされています。

  • 各ルートエレメントはビューの名前を定義します。
  • 各ルートエレメントには、query と呼ばれる子エレメントが含まれており、この子エレメントにはビューのカスタムSQL クエリが含まれています。

次に例を示します。

{
	"MyView": {
		"query": "SELECT * FROM Buckets WHERE MyColumn = 'value'"
	},
	"MyView2": {
		"query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)"
	}
}
UserDefinedViews 接続プロパティを使用して、JSON コンフィギュレーションファイルの場所を指定します。次に例を示します。
"UserDefinedViews", "C:\\Users\\yourusername\\Desktop\\tmp\\UserDefinedViews.json"

ユーザー定義ビューのスキーマ

ユーザー定義ビューは、デフォルトでUserViews スキーマで公開されます。これは、ビューの名前がデータモデル内の実際のエンティティと衝突しないようにするためです。UserViews で使用されるスキーマの名前は、UserViewsSchemaName プロパティを設定して変更できます。

ユーザー定義ビューの使用

例えば、UserViews.RCustomers という名前のユーザー定義ビューを持つSQL ステートメントは、Raleigh の顧客のみをリストします。
SELECT * FROM Customers WHERE City = 'Raleigh';
ドライバーへのクエリは次のようになります。
SELECT * FROM UserViews.RCustomers WHERE Status = 'Active';
ソースへの効果的なクエリは次のようになります。
SELECT * FROM Customers WHERE City = 'Raleigh' AND Status = 'Active';
これは、ビュークエリとビュー定義を効果的に組み合わせた、ユーザー定義ビューへのクエリの非常にシンプルな例です。これらのクエリをはるかに複雑なパターンで構成することが可能です。すべてのSQL 操作は両方のクエリでサポートされ、必要に応じて組み合わされます。

CData Cloud

SSL の設定

SSL 設定のカスタマイズ

デフォルトでは、Cloud はサーバーの証明書をシステムの信頼できる証明書ストアと照合してSSL / TLS のネゴシエーションを試みます。

別の証明書を指定するには、利用可能なフォーマットについてSSLServerCert プロパティを参照してください。

CData Cloud

ファイアウォールとプロキシ

Firewall またはProxy 経由の接続

HTTP プロキシ

Windows のシステムプロキシ経由の接続では、接続プロパティを追加で設定する必要はありません。他のプロキシに接続するには、ProxyAutoDetect をfalse に設定します。

さらにHTTP プロキシへの認証には、ProxyServer とProxyPort に加えてProxyAuthScheme、ProxyUser、およびProxyPassword を設定します。

その他のプロキシ

次のプロパティを設定します。

  • プロキシベースのファイヤーウォールを使用するには、FirewallType、FirewallServer、およびFirewallPort を設定します。
  • 接続をトンネルするには、FirewallType をTUNNEL に設定します。
  • 認証するには、FirewallUser とFirewallPassword を設定します。
  • SOCKS プロキシへの認証には、さらにFirewallType をSOCKS5 に設定します。

CData Cloud

データのキャッシュ

CData Cloud

キャッシュ接続の設定

CData Cloud

メタデータのキャッシュ

CData Cloud

データの自動キャッシュ

CData Cloud

明示的なデータのキャッシュ

CData Cloud

データ型マッピング

CData Cloud

クエリ処理

クエリ処理

CData は、クライアントサイドのSQL エンジンをCloud ライブラリに組み込んでいます。これにより、フィルタ、集約、関数など、SQL-92 が提供する全機能をサポートすることができます。

SQL-92をサポートしないソースに対しては、Cloud はAmazon S3 にSQLステートメントの処理を可能な限りオフロードし、残りのクエリをクライアントサイドのインメモリで処理します。その結果、最適なパフォーマンスを得ることができます。

限られたクエリ能力のデータソースに対しては、Cloud はSQL クエリの変換をおこない、Cloud がより単純になるよう処理します。 目標はデータソースのクエリ能力に基づいて賢く判断し可能な限り計算を抑えることです。Amazon S3 のクエリ評価コンポーネントはSQL クエリを検証し、Cloud がネイティブに実行できないクエリ部分を示す情報を返します。

Amazon S3 のクエリスライサーコンポーネントはより具体的なケースにおいて1つのクエリを複数の独立したクエリに分割するために使用されます。クライアントサイドのクエリエンジンはクエリの簡素化、複数のクエリへの分割、結果セットのサイズを最小化しながらクライアントサイドで集約のプッシュダウンや計算をするなどの決定を行います。

クエリを部分的にでもクライアントサイドで評価するということには大きなトレードオフがあります。このモデルでは効果的に実行することが不可能なクエリは常に存在し、この方法で計算すると特にコストが高くなるものもあります。CData は可能な限り効率的なクエリを生成し、最も柔軟なクエリ機能を提供するために常にデータソースに対して実行可能な限りのクエリをプッシュダウンしています。

追加情報

CData がどのようにクエリ処理を行うかについては、CData Architecture: Query Execution を参照してください。

CData Cloud

ログ

Cloud のログを取得しておくことで、エラーメッセージや想定外の振る舞いを診断する際に役立ちます。

基本的なログの記録

2つの接続プロパティを設定するだけで、Cloud のログを取得できます。

  • Logfile:ログファイルの名前と場所を指定するファイルパス。
  • Verbosity:ログの詳細レベルを決定する数値(1-5)。5段階数値の内容は、「接続プロパティ」セクションのページを確認してください。
  • MaxLogFileSize:サイズリミットを超えると、日付と時刻が末尾に追加された新しいログが同じフォルダ内に作成されます。リミットのデフォルトは100 MB です。100 kB より小さい値を設定した場合、100 kB がリミットとなります。
  • MaxLogFileCount:ログファイルの最大ファイル数を指定する文字列。サイズリミットを超えると、日付と時刻が末尾に追加された新しいログが同じフォルダ内に作成され、最も古いログファイルが削除されます。サポートされる最低値は2です。0や負の値は、数に制限がないことを示します。

このプロパティを設定すると、認証が実行されたときやクエリが実行されたときなど、さまざまなタスクを実行する際に、Cloud がログファイルを生成します。指定したファイルが存在しない場合は作成されます。

ログのVerbosity レベル

Verbosity レベルは、Cloud がLogfile にどの程度の詳細さで記載するかを決定します。1 から5 までのVerbosity レベルがサポートされています。次のリストで、これらについて説明します。

1Verbosity を1に設定すると、クエリ、返された行数、実行開始とかかった時間、エラーが記録されます。
2Verbosity を2に設定すると、Verbosity 1に含まれるすべておよびリクエストに関する追加の情報が記録されます。
3Verbosity を3に設定すると、2 に加えてHTTP ヘッダーおよびリクエストとレスポンスの本文が記録されます。
4Verbosity を4に設定すると、3 に加えてデータソースとのトランスポートレベルの通信が記録されます。これには、SSL ネゴシエーションが含まれます。
5Verbosity を5に設定すると、データソースとのやり取りおよび問題のトラブルシューティングに役立つ追加情報も記録されます。これには、インターフェースコマンドが含まれます。

通常の実行では、Verbosity を2以上に設定しないでください。高い詳細レベルでは、大量のデータが記録されて、実行に遅れが生じる恐れがあります。

特定の情報に関するカテゴリを表示または非表示にしてログ内容を調整するには、LogModules を参照してください。

センシティブデータ

Verbosity レベル3以上では、組織外で共有したくない情報をキャプチャする場合があります。以下に、各レベルで懸念される情報をリストします。

  • Verbosity 3:Cloud から返されるすべてのデータを含むリクエストとレスポンスのボディ
  • Verbosity 4:SSL 証明書
  • Verbosity 5:ヒューマンリーダブルでないバイナリ転送データなど、Verbosity 3には含まれていない追加の転送データ

データセキュリティのベストプラクティス

パスワードなどのセンシティブデータは、接続文字列やログ内のすべてのリクエストでマスクされますが、組織外で共有する前に機密情報がないかログを確認することをお勧めします。

高度なログの記録

ログファイルに記録される情報を、正確に絞り込みたい場合があるかもしれません。これは、LogModules プロパティを使用することで可能です。

このプロパティを使えば、セミコロン区切りでリスト化されたログモジュールを使用してログ内容をフィルタできます。

すべてのモジュール名は4文字です。注意点として、3文字のモジュール名は、必ず最後に空白文字を含みます。利用可能なモジュールは次のとおりです。

  • EXEC:クエリの実行。元のSQL クエリ、パースされたSQL クエリ、正規化されたSQL クエリ用の実行メッセージを含みます。クエリとページングの成功または失敗のメッセージもここに表示されます。
  • INFO:一般的な情報。接続文字列、ドライバーのバージョン(ビルド番号)、初期接続メッセージを含みます。
  • HTTP:HTTP プロトコルメッセージ。HTTP リクエストとレスポンス(POST メッセージを含む)、Kerberos に関するメッセージを含みます。
  • SSL :SSL 証明書メッセージ。
  • OAUT:OAuth に関する失敗または成功のメッセージ。
  • SQL :SQL トランザクション、SQL 一括転送のメッセージ、SQL 結果セットのメッセージを含みます。
  • META:メタデータのキャッシュとスキーマのメッセージ。
  • TCP :TCP トランスポート層メッセージの送受信Raw バイト。
このプロパティのサンプル値には以下のようなものがあります。
LogModules=INFO;EXEC;SSL ;SQL ;META;

これらのモジュールはVerbosity を考慮して、取得中の情報の詳細レベルを変更します。

CData Cloud

SQL 準拠

SELECT ステートメント

構文のリファレンスと例については、SELECT ステートメント を参照してください。

Amazon S3 API 機能の詳細については、データモデル を参照してください。

EXECUTE ステートメント

EXECUTE またはEXEC ステートメントを使用して、ストアドプロシージャを実行します。構文のリファレンスと例については、EXECUTE ステートメント を参照してください。

名前とかっこ

  • テーブルとカラムの名前は識別子名であると見なされます。このため、これらの名前には、次の文字のみを使用できます:[A-Z, a-z, 0-9, _:@]。
  • テーブルまたはカラムの名前に上記以外の文字を使用する場合は、SQL ステートメントではその名前を角かっこ ([name])で囲む必要があります。
  • パラメータ名の先頭にはオプションで@を付加できます(@p1、@CustomerName など)。パラメータ名をかっこで囲むことはできません。
  • 文字列は、一重引用符で囲む必要があります('John Doe'など)。

CData Cloud

SELECT ステートメント

SELECT ステートメントは次の基本的な句で構成できます。

  • SELECT
  • INTO
  • FROM
  • JOIN
  • WHERE
  • GROUP BY
  • HAVING
  • UNION
  • ORDER BY
  • LIMIT

SELECT 構文

次の構文ダイアグラムは、Cloud のSQL エンジン:

SELECT {
  [ TOP <numeric_literal> | DISTINCT ]
  { 
    * 
    | { 
        <expression> [ [ AS ] <column_reference> ] 
        | { <table_name> | <correlation_name> } .* 
      } [ , ... ] 
  }
  [ INTO csv:// [ filename= ] <file_path> [ ;delimiter=tab ] ]
  { 
    FROM <table_reference> [ [ AS ] <identifier> ] 
  } [ , ... ]
  [ [  
      INNER | { { LEFT | RIGHT | FULL } [ OUTER ] } 
    ] JOIN <table_reference> [ ON <search_condition> ] [ [ AS ] <identifier> ] 
  ] [ ... ] 
  [ WHERE <search_condition> ]
  [ GROUP BY <column_reference> [ , ... ]
  [ HAVING <search_condition> ]
  [ UNION [ ALL ] <select_statement> ]
  [ 
    ORDER BY 
    <column_reference> [ ASC | DESC ] [ NULLS FIRST | NULLS LAST ]
  ]
  [ 
    LIMIT <expression>
    [ 
      { OFFSET | , }
      <expression> 
    ]
  ] 
}

<expression> ::=
  | <column_reference>
  | @ <parameter> 
  | ?
  | COUNT( * | { [ DISTINCT ] <expression> } )
  | { AVG | MAX | MIN | SUM | COUNT } ( <expression> ) 
  | NULLIF ( <expression> , <expression> ) 
  | COALESCE ( <expression> , ... ) 
  | CASE <expression>
      WHEN { <expression> | <search_condition> } THEN { <expression> | NULL } [ ... ]
    [ ELSE { <expression> | NULL } ]
    END 
  | <literal>
  | <sql_function> 

<search_condition> ::= 
  {
    <expression> { = | > | < | >= | <= | <> | != | LIKE | NOT LIKE | IN | NOT IN | IS NULL | IS NOT NULL | AND | OR | CONTAINS | BETWEEN } [ <expression> ]
  } [ { AND | OR } ... ] 
でサポートされている構文の概要を示します。

サンプル

  1. すべてのカラムを返す:
    SELECT * FROM Buckets
  2. カラムをリネームする:
    SELECT [OwnerId] AS MY_OwnerId FROM Buckets
  3. カラムのデータを別のデータ型としてキャストする:
    SELECT CAST(AnnualRevenue AS VARCHAR) AS Str_AnnualRevenue FROM Buckets
  4. データを検索する:
    SELECT * FROM Buckets WHERE Name = 'TestBucket'
  5. クエリ条件に一致するアイテムの数を返す:
    SELECT COUNT(*) AS MyCount FROM Buckets 
  6. クエリ条件に一致する一意のアイテムの数を返す:
    SELECT COUNT(DISTINCT OwnerId) FROM Buckets 
  7. クエリ条件に一致する一意のアイテムを返す:
    SELECT DISTINCT OwnerId FROM Buckets 
  8. データを要約する:
    SELECT OwnerId, MAX(AnnualRevenue) FROM Buckets GROUP BY OwnerId
    詳しくは、集計関数 を参照してください。
  9. 複数のテーブルからデータを検索する:
    SELECT Customers.ContactName, Orders.OrderDate FROM Customers, Orders WHERE Customers.CustomerId=Orders.CustomerId
    詳しくは、JOIN クエリ を参照してください。
  10. 昇順で結果をソートする:
    SELECT Name, OwnerId FROM Buckets  ORDER BY OwnerId ASC
  11. 指定した行数に結果を制限する:
    SELECT Name, OwnerId FROM Buckets LIMIT 10 
  12. 実行時にインプットに渡すためクエリをパラメータ化する。これにより、prepared statement を作成しSQL インジェクション攻撃を鎮めることができます:
    SELECT * FROM Buckets WHERE Name = @param

疑似カラム

SELECT ステートメントで入力専用フィールドを使用できます。これらのフィールド(疑似カラム)は、結果には 通常のカラムとして表示されることはありませんが、WHERE 句の一部として指定できます。疑似カラムを使用して、Amazon S3 から追加機能にアクセスできます。

    SELECT * FROM Buckets WHERE Query = 'Value > 100'
    

CData Cloud

集計関数

COUNT

クエリ条件に一致する行の数を返します。

SELECT COUNT(*) FROM Buckets WHERE Name = 'TestBucket'

COUNT(DISTINCT)

クエリ条件に一致する、null 以外の個別のフィールド値の数を返します。

SELECT COUNT(DISTINCT Name) AS DistinctValues FROM Buckets WHERE Name = 'TestBucket'

AVG

カラムの値の平均を返します。

SELECT OwnerId, AVG(AnnualRevenue) FROM Buckets WHERE Name = 'TestBucket'  GROUP BY OwnerId

MIN

カラムの値の最小値を返します。

SELECT MIN(AnnualRevenue), OwnerId FROM Buckets WHERE Name = 'TestBucket' GROUP BY OwnerId

MAX

カラムの値の最大値を返します。

SELECT OwnerId, MAX(AnnualRevenue) FROM Buckets WHERE Name = 'TestBucket' GROUP BY OwnerId

SUM

カラムの値の合計を返します。

SELECT SUM(AnnualRevenue) FROM Buckets WHERE Name = 'TestBucket'

CData Cloud

JOIN クエリ

CData Cloud は次の例のような標準SQL の結合をサポートします。

内部結合

内部結合は、結合条件に合う行のみを両テーブルから選択します。

SELECT Customers.ContactName, Orders.OrderDate FROM Customers, Orders WHERE Customers.CustomerId=Orders.CustomerId

左結合

左結合は、FROM テーブルのすべての行とJOIN テーブルの条件に合う行のみを選択します。

SELECT Customers.ContactName, Orders.OrderDate FROM Customers LEFT OUTER JOIN Orders ON Customers.CustomerId=Orders.CustomerId

CData Cloud

日付リテラル関数

次の日付リテラル関数を使用して、相対間隔を使って日付フィールドをフィルタできます。これらの関数では、<、>、および = 演算子がサポートされていますが、<= および >= はサポートされていないことに注意してください。

L_TODAY()

現在の日。

  SELECT * FROM MyTable WHERE MyDateField = L_TODAY()

L_YESTERDAY()

前の日。

  SELECT * FROM MyTable WHERE MyDateField = L_YESTERDAY()

L_TOMORROW()

次の日。

  SELECT * FROM MyTable WHERE MyDateField = L_TOMORROW()

L_LAST_WEEK()

前の週のすべての日。

  SELECT * FROM MyTable WHERE MyDateField = L_LAST_WEEK()

L_THIS_WEEK()

現在の週のすべての日。

  SELECT * FROM MyTable WHERE MyDateField = L_THIS_WEEK()

L_NEXT_WEEK()

次の週のすべての日。

  SELECT * FROM MyTable WHERE MyDateField = L_NEXT_WEEK()
以下も利用可能です:
  • L_LAST/L_THIS/L_NEXT MONTH
  • L_LAST/L_THIS/L_NEXT QUARTER
  • L_LAST/L_THIS/L_NEXT YEAR

L_LAST_N_DAYS(n)

現在の日を除く過去n 日。

  SELECT * FROM MyTable WHERE MyDateField = L_LAST_N_DAYS(3)

L_NEXT_N_DAYS(n)

現在の日を含む次のn 日。

  SELECT * FROM MyTable WHERE MyDateField = L_NEXT_N_DAYS(3)
以下も利用可能です:
  • L_LAST/L_NEXT_90_DAYS

L_LAST_N_WEEKS(n)

現在の週のn 週前から始まり、前の週で終わる、すべての週のすべての日。

  SELECT * FROM MyTable WHERE MyDateField = L_LAST_N_WEEKS(3)

L_NEXT_N_WEEKS(n)

次の週から始まり、n 週後に終わる、すべての週のすべての日。

  SELECT * FROM MyTable WHERE MyDateField = L_NEXT_N_WEEKS(3)
以下も利用可能です:
  • L_LAST/L_NEXT_N_MONTHS(n)
  • L_LAST/L_NEXT_N_QUARTERS(n)
  • L_LAST/L_NEXT_N_YEARS(n)

CData Cloud

SELECT INTO ステートメント

SELECT INTO ステートメントを使って、書式付きデータをファイルにエクスポートできます。

SQL クエリを使ったデータのエクスポート

次のクエリは、comma-separated values(CSV)ファイルフォーマットにデータをエクスポートします。

SELECT Name, OwnerId INTO [csv://Buckets.txt] FROM [Buckets] WHERE Name = 'TestBucket'
ファイルURI で他のフォーマットを指定できます。利用可能な区切り文字はタブ、セミコロン、カンマです。デフォルトはカンマです。次の例は、tab-separated values(TSV)にエクスポートします。
SELECT Name, OwnerId INTO [csv://Buckets.txt;delimiter=tab] FROM [Buckets] WHERE Name = 'TestBucket'
URI で他のファイルフォーマットを指定できます。以下の例は、tab-separated values(TSV)にエクスポートします。

CData Cloud

SQL 関数

Cloud には、ほとんどの標準的なデータベースで使用できる関数と同様の関数が用意されています。これらの関数は、CData プロバイダーエンジンで実装されるため、同じ一貫したAPI を使用してすべてのデータソースに渡って使用できます。関数にはstring、date、math の3つのカテゴリがあります。

Cloud はすべてのSQL 関数入力を文字列またはカラム識別子のいずれかとして解釈するため、すべてのリテラルを単一引用符で文字列としてエスケープする必要があります。例えば、DATENAME 関数のSQL Server 構文とCloud 構文を比較すると次のようになります。

  • SQL Server:
    SELECT DATENAME(yy,GETDATE())
  • Cloud:
    SELECT DATENAME('yy',GETDATE())

文字列関数

これらの関数は、文字列操作を実行し、文字列値を返します。詳しくは、文字列関数 を参照してください。

SELECT CONCAT(firstname, space(4), lastname) FROM Buckets WHERE Name = 'TestBucket'

日付関数

これらの関数は、日付および日時操作を実行します。詳しくは、日付関数 を参照してください。

SELECT CURRENT_TIMESTAMP() FROM Buckets

算術関数

これらの関数は、数値演算を提供します。詳しくは、算術関数 を参照してください。

SELECT RAND() FROM Buckets

関数パラメータおよびSQL 関数のネスト

Cloud では、関数に対するパラメータとして、カラム名、定数、および他の関数の結果がサポートされます。次に示す例は、SQL 関数の使用法として有効です。
SELECT CONCAT('Mr.', SPACE(2), firstname, SPACE(4), lastname) FROM Buckets

CData Cloud

文字列関数

ASCII(character_expression)

文字式の左端の文字のASCII コード値を返します。

  • character_expression:文字式。

                      SELECT ASCII('0');
                      --  Result: 48
                    

CHAR(integer_expression)

整数のASCII コードを対応する文字に変換します。

  • integer_expression:0 から255 までの整数。

                      SELECT CHAR(48);
                      -- Result: '0'
                    

CHARINDEX(expressionToFind ,expressionToSearch [,start_location ])

指定した文字列式の開始位置を返します。

  • expressionToFind:検索対象の文字式。
  • expressionToSearch:検索対象となる文字式(通常は、カラム)。
  • start_location:expressionToFind の検索を開始するexpressionToSearch 内の文字位置(オプション)。

                      SELECT CHARINDEX('456', '0123456');
                      -- Result: 4

                      SELECT CHARINDEX('456', '0123456', 5);
                      -- Result: -1
                    

CHAR_LENGTH(character_expression),

式内にあるUTF-8 文字の数を返します。

  • character_expression:長さを評価する文字のセット。

				 SELECT CHAR_LENGTH('sample text') FROM Account LIMIT 1
				 -- Result: 11			
				

CONCAT(string_value1, string_value2 [, string_valueN])

2つ以上の文字列値を連結した文字列を返します。

  • string_value1:連結される最初の文字列。
  • string_value2:連結される2番目の文字列。
  • *:連結される任意の数の文字列。

                      SELECT CONCAT('Hello, ', 'world!');
                      -- Result: 'Hello, world!'
                    

CONTAINS(expressionToSearch, expressionToFind)

expressionToSearch 中にexpressionToFind が見つかった場合は1を、それ以外は0を返します。

  • expressionToSearch:検索対象となる文字式(通常は、カラム)。
  • expressionToFind:検索対象の文字式。

                      SELECT CONTAINS('0123456', '456');
                      -- Result: 1

                      SELECT CONTAINS('0123456', 'Not a number');
                      -- Result: 0
                    

ENDSWITH(character_expression, character_suffix)

character_expression がcharacter_suffix で終わる場合は1を、それ以外は0を返します。

  • character_expression:文字式。
  • character_suffix:検索する文字のサフィックス。

                      SELECT ENDSWITH('0123456', '456');
                      -- Result: 1

                      SELECT ENDSWITH('0123456', '012');
                      -- Result: 0
                    

FILESIZE(uri)

指定されたファイルパスのファイルに存在するバイト数を返します。

  • uri:サイズを読み取るファイルのパス。

				SELECT FILESIZE('C:/Users/User1/Desktop/myfile.txt');
				-- Result: 23684
				

FORMAT(value [, parseFormat], format )

指定された書式で値をフォーマットして返します。

  • value:フォーマットする文字列。
  • format:日付や数値形式の出力構文を指定する文字列。
  • parseFormat:日付値の入力構文を指定する文字列。整数型には適用されません。

                      SELECT FORMAT(12.34, '#');
                      -- Result: 12

                      SELECT FORMAT(12.34, '#.###');
                      -- Result: 12.34

                      SELECT FORMAT(1234, '0.000E0');
                      -- Result: 1.234E3
                      
                      SELECT FORMAT('2019/01/01', 'yyyy-MM-dd');
                      -- Result: 2019-01-01
                      
                      SELECT FORMAT('20190101', 'yyyyMMdd', 'yyyy-MM-dd');
                      -- Result: '2019-01-01'
                    

FROM_UNIXTIME(time, issecond)

unix_timestamp 引数を、現在のタイムゾーンで表されたYYYY-MM-DD HH:MM:SS の値で返します。

  • time:エポックタイムのタイムスタンプの値。ミリ秒が利用可能。
  • issecond:タイムスタンプの値がミリ秒であるとエポックタイムに示す。

                      SELECT FROM_UNIXTIME(1540495231, 1);
                      -- Result: 2018-10-25 19:20:31

                      SELECT FROM_UNIXTIME(1540495357385, 0);
                      -- Result: 2018-10-25 19:22:37
                    

HASHBYTES(algorithm, value)

指定されたアルゴリズムを使用して、入力値のハッシュをバイト配列として返します。サポートされているアルゴリズムはMD5、SHA1、SHA2_256、SHA2_512、SHA3_224、SHA3_256、SHA3_384、およびSHA3_512 です。

  • algorithm:ハッシュ化に使用するアルゴリズム。MD5、SHA1、SHA2_256、SHA2_512、SHA3_224、SHA3_256、SHA3_384、またはSHA3_512 のいずれかでなければなりません。
  • value:ハッシュする値。文字列またはバイト配列でなければなりません。

                      SELECT HASHBYTES('MD5', 'Test');
                      -- Result (byte array): 0x0CBC6611F5540BD0809A388DC95A615B
                    

INDEXOF(expressionToSearch, expressionToFind [,start_location ])

指定した文字列式の開始位置を返します。

  • expressionToSearch:検索対象となる文字式(通常は、カラム)。
  • expressionToFind:検索対象の文字式。
  • start_location:expressionToFind の検索を開始するexpressionToSearch 内の文字位置(オプション)。

                      SELECT INDEXOF('0123456', '456');
                      -- Result: 4

                      SELECT INDEXOF('0123456', '456', 5);
                      -- Result: -1
                    

ISNULL ( check_expression , replacement_value )

null を指定した置換値に置き換えます。

  • check_expression:null かどうかをチェックされる式。
  • replacement_value:check_expression がnull のときに返される式。

                      SELECT ISNULL(42, 'Was NULL');
                      -- Result: 42

                      SELECT ISNULL(NULL, 'Was NULL');
                      -- Result: 'Was NULL'
                    

JSON_AVG(json, jsonpath)

JSON オブジェクト内のJSON 配列の平均値を計算します。配列へのパスはjsonpath 引数で指定します。戻り値は数値またはnull です。

  • json:抽出するJSON ドキュメント。
  • jsonpath:ノードを選択します。[x], [2..], [.8] または[1...12] のように使います。[x] はすべてのノードを選択します。

                      SELECT JSON_AVG('[1,2,3,4,5]', '$[x]');
                      -- Result: 3

                      SELECT JSON_AVG('{"test": {"data": [1,2,3,4,5]}}', '$.test.data[x]');
                      -- Result: 3

                      SELECT JSON_AVG('{"test": {"data": [1,2,3,4,5]}}', '$.test.data[3..]');
                      -- Result: 4.5
                    

JSON_COUNT(json, jsonpath)

JSON オブジェクト内のJSON 配列のエレメント数を返します。配列へのパスはjsonpath 引数で指定します。戻り値は数値またはnull です。

  • json:抽出するJSON ドキュメント。
  • jsonpath:ノードを選択します。[x], [2..], [.8] または[1...12] のように使います。[x] はすべてのノードを選択します。

                      SELECT JSON_COUNT('[1,2,3,4,5]', '$[x]');
                      -- Result: 5

                      SELECT JSON_COUNT('{"test": {"data": [1,2,3,4,5]}}', '$.test.data[x]');
                      -- Result: 5

                      SELECT JSON_COUNT('{"test": {"data": [1,2,3,4,5]}}', '$.test.data[3..]');
                      -- Result: 2
                    

JSON_EXTRACT(json, jsonpath)

JSON 配列またはオブジェクトのあらゆる値を選択します。配列へのパスはjsonpath 引数で指定します。戻り値は数値またはnull です。

  • json:抽出するJSON ドキュメント。
  • jsonpath:ノードの選択に使用するXPath。JSONPath は文字列定数である必要があります。選択されたノードの値は、トークンで区切られたリストの形式で返されます。

                      SELECT JSON_EXTRACT('{"test": {"data": 1}}', '$.test');
                      -- Result: '{"data":1}'

                      SELECT JSON_EXTRACT('{"test": {"data": 1}}', '$.test.data');
                      -- Result: 1

                      SELECT JSON_EXTRACT('{"test": {"data": [1, 2, 3]}}', '$.test.data[1]');
                      -- Result: 2
                    

JSON_MAX(json, jsonpath)

JSON オブジェクト内のJSON 配列の最大値を取得します。配列へのパスはjsonpath 引数で指定します。戻り値は数値またはnull です。

  • json:抽出するJSON ドキュメント。
  • jsonpath:ノードを選択します。[x], [2..], [.8] または[1...12] のように使います。[x] はすべてのノードを選択します。

                      SELECT JSON_MAX('[1,2,3,4,5]', '$[x]');
                      -- Result: 5

                      SELECT JSON_MAX('{"test": {"data": [1,2,3,4,5]}}', '$.test.data[x]');
                      -- Result: 5

                      SELECT JSON_MAX('{"test": {"data": [1,2,3,4,5]}}', '$.test.data[..3]');
                      -- Result: 4
                    

JSON_MIN(json, jsonpath)

JSON オブジェクト内のJSON 配列の最小値を取得します。配列へのパスはjsonpath 引数で指定します。戻り値は数値またはnull です。

  • json:抽出するJSON ドキュメント。
  • jsonpath:ノードを選択します。[x], [2..], [.8] または[1...12] のように使います。[x] はすべてのノードを選択します。

                      SELECT JSON_MIN('[1,2,3,4,5]', '$[x]');
                      -- Result: 1

                      SELECT JSON_MIN('{"test": {"data": [1,2,3,4,5]}}', '$.test.data[x]');
                      -- Result: 1

                      SELECT JSON_MIN('{"test": {"data": [1,2,3,4,5]}}', '$.test.data[3..]');
                      -- Result: 4
                    

JSON_SUM(json, jsonpath)

JSONPath 式に応じたJSON のサマリー値を計算します。戻り値は数値またはnull です。

  • json:抽出するJSON ドキュメント。
  • jsonpath:ノードを選択します。[x], [2..], [.8] または[1...12] のように使います。[x] はすべてのノードを選択します。

                      SELECT JSON_SUM('[1,2,3,4,5]', '$[x]');
                      -- Result: 15

                      SELECT JSON_SUM('{"test": {"data": [1,2,3,4,5]}}', '$.test.data[x]');
                      -- Result: 15

                      SELECT JSON_SUM('{"test": {"data": [1,2,3,4,5]}}', '$.test.data[3..]');
                      -- Result: 9
                    

LEFT ( character_expression , integer_expression )

指定された文字列の左端から指定された数の文字を返します。

  • character_expression:文字式。
  • integer_expression:character_expression の左端から数えて何文字を返すかを指定する正の整数。

                      SELECT LEFT('1234567890', 3);
                      -- Result: '123'
                    

LEN(string_expression)

指定された文字列式の文字数を返します。

  • string_expression:文字列式。

                      SELECT LEN('12345');
                      -- Result: 5
                    

LOCATE(substring,string)

部分文字列が表示される文字列の文字数を表す整数を返します。

  • substring:より大きな文字列内で検索する部分文字列。
  • string:部分文字列を検索するより大きな文字列。

				SELECT LOCATE('sample','XXXXXsampleXXXXX');
				-- Result: 6
				

LOWER ( character_expression )

大文字データを小文字に変換した文字式を返します。

  • character_expression:文字式。

                      SELECT LOWER('MIXED case');
                      -- Result: 'mixed case'
                    

LTRIM(character_expression)

先頭の空白を除いた文字式を返します。

  • character_expression:文字式。

                      SELECT LTRIM('     trimmed');
                      -- Result: 'trimmed'
                    

MASK(string_expression, mask_character [, start_index [, end_index ]])

start_index とend_index の間の文字を文字列内のmask_character に置き換えます。

  • string_expression:検索される文字列式。
  • mask_character:マスクする文字。
  • start_index:文字列の先頭でマスクされないままにする文字数(オプション)。デフォルトは0 です。
  • end_index:文字列の最後でマスクされないままにする文字数(オプション)。デフォルトは0 です。

                        SELECT MASK('1234567890','*',);
                        -- Result: '**********'
                        SELECT MASK('1234567890','*', 4);
                        -- Result: '1234******'
                        SELECT MASK('1234567890','*', 4, 2);
                        -- Result: '1234****90'  
                    

NCHAR(integer_expression)

Unicode 標準の定義に従って、指定された整数コードのUnicode 文字を返します。

  • integer_expression:0 から255 までの整数。

OCTET_LENGTH(character_expression),

式内にあるバイト数を返します。

  • character_expression:評価する文字のセット。

				 SELECT OCTET_LENGTH('text') FROM Account LIMIT 1
				 -- Result: 4
				

PATINDEX(pattern, expression)

式内に最初に見つかったパターンの開始位置を返します。パターンが見つからなかった場合は0を返します。

  • pattern:発見すべきシーケンスを含む文字式。ワイルドカード文字% は、式の先頭または末尾でのみ使用できます。
  • expression:パターンの検索対象となる式(通常は、カラム)。

                      SELECT PATINDEX('123%', '1234567890');
                      -- Result: 1

                      SELECT PATINDEX('%890', '1234567890');
                      -- Result: 8

                      SELECT PATINDEX('%456%', '1234567890');
                      -- Result: 4
                    

POSITION(expressionToFind IN expressionToSearch)

指定した文字列式の開始位置を返します。

  • expressionToFind:検索対象の文字式。
  • expressionToSearch:検索対象となる文字式(通常は、カラム)。

                      SELECT POSITION('456' IN '123456');
                      -- Result: 4

                      SELECT POSITION('x' IN '123456');
                      -- Result: 0
                    

QUOTENAME(character_string [, quote_character])

指定されたUnicode 文字列に必要な区切り記号を追加することで、有効なSQL Server の区切り付き識別子を返します。

  • character_string:Unicode 文字データの文字列。文字列は128文字に制限されます。文字を128文字を超えて入力すると、null が返されます。
  • quote_character:区切り記号として使用される1つの文字(オプション)。単一引用符、左または右の角かっこ、二重引用符のいずれかを指定できます。quote_character を指定しない場合は、角かっこが使用されます。

                      SELECT QUOTENAME('table_name');
                      -- Result: '[table_name]'

                      SELECT QUOTENAME('table_name', '"');
                      -- Result: '"table_name"'

                      SELECT QUOTENAME('table_name', '[');
                      -- Result: '[table_name]'
                    

REPLACE(string_expression, string_pattern, string_replacement)

見つかった文字列をすべて別の文字列に置換します。

  • string_expression:検索される文字列式。文字またはバイナリデータ型を指定できます。
  • string_pattern:検索されるサブ文字列。空の文字列を設定することはできません。
  • string_replacement:置き換え後の文字列。

                      SELECT REPLACE('1234567890', '456', '|');
                      -- Result: '123|7890'

                      SELECT REPLACE('123123123', '123', '.');
                      -- Result: '...'

                      SELECT REPLACE('1234567890', 'a', 'b');
                      -- Result: '1234567890'
                    

REPLICATE ( string_expression ,integer_expression )

文字列値を指定された回数だけ繰り返します。

  • string_expression:繰り返す文字列。
  • integer_expression:繰り返し回数。

                      SELECT REPLACE('x', 5);
                      -- Result: 'xxxxx'
                    

REVERSE ( string_expression )

文字列式を逆順序で返します。

  • string_expression:文字列。

                      SELECT REVERSE('1234567890');
                      -- Result: '0987654321'
                    

RIGHT ( character_expression , integer_expression )

文字列の右側から指定された数の文字を返します。

  • character_expression:文字式。
  • integer_expression:返される文字式の文字数を指定する正の整数。

                      SELECT RIGHT('1234567890', 3);
                      -- Result: '890'
                    

RTRIM(character_expression)

末尾の空白を削除した後の文字式を返します。

  • character_expression:文字式。

                      SELECT RTRIM('trimmed     ');
                      -- Result: 'trimmed'
                    

SOUNDEX(character_expression)

文字列の音声表現に基づいて、4文字のSoundex コードを返します。

  • character_expression:文字データの英数字式。

                      SELECT SOUNDEX('smith');
                      -- Result: 'S530'
                    

SPACE(repeatcount)

空白の繰り返しで構成される文字列を返します。

  • repeatcount:空白文字の数。

                      SELECT SPACE(5);
                      -- Result: '     '
                    

SPLIT(string, delimiter, offset)

区切り文字の間の文字列のセクションを返します。

  • string:分割する文字列。
  • delimiter:文字列を分割する文字。
  • offset:返す分割の数。正の数値は左からのオフセットとして扱われ、負の数値は右からのオフセットとして扱われます。

                      SELECT SPLIT('a/b/c/d', '/', 1);
                      -- Result: 'a'
                      SELECT SPLIT('a/b/c/d', '/', -2);
                      -- Result: 'c'
                    

STARTSWITH(character_expression, character_prefix)

character_expression がcharacter_prefix で始まる場合は1を、それ以外は0を返します。

  • character_expression:文字式。
  • character_prefix:検索する文字列のプレフィックス。

                      SELECT STARTSWITH('0123456', '012');
                      -- Result: 1

                      SELECT STARTSWITH('0123456', '456');
                      -- Result: 0
                    

STR ( float_expression [ , integer_length [ , integer_decimal ] ] )

数値データから変換された文字データを返します。例えば、STR(123.45, 6, 1) は123.5 を返します。

  • float_expression:浮動小数点型の式。
  • length:返される長さの合計(オプション)。これには、小数点、符号、数字、および空白も含まれます。デフォルトは10です。
  • decimal:小数点以下の桁数(オプション)。decimal には、16以下を指定する必要があります。

                      SELECT STR('123.456');
                      -- Result: '123'

                      SELECT STR('123.456', 2);
                      -- Result: '**'

                      SELECT STR('123.456', 10, 2);
                      -- Result: '123.46'
                    

STUFF(character_expression , integer_start , integer_length , replaceWith_expression)

文字列を別の文字列内に挿入します。まず、最初の文字列の指定された開始位置から指定された長さの文字を削除し、次に、2番目の文字列を最初の文字列の指定された開始位置に挿入します。

  • character_expression:文字列式。
  • start:削除および挿入を開始する位置を指定する整数値。start またはlength が負の場合は、null が返されます。start が変更される文字列(character_expression)の長さを超える場合は、null が返されます。
  • length:削除する文字数を指定する整数。length がcharacter_expression の長さを超える場合は、replaceWith_expression は最後の文字まで削除されます。
  • replaceWith_expression:character_expression のstart 値の位置から始まるlength 文字数を置き換える文字データの式。

                      SELECT STUFF('1234567890', 3, 2, 'xx');
                      -- Result: '12xx567890'
                    

SUBSTRING(string_value FROM start FOR length)

文字列のうち、指定されたインデックスから始まる指定された長さの部分を返します。

  • string_value:文字列。
  • start:返される文字の開始インデックスを指定する正の整数。
  • length:オプション。返される文字数を指定する正の整数。

                      SELECT SUBSTRING('1234567890' FROM 3 FOR 2);
                      -- Result: '34'

                      SELECT SUBSTRING('1234567890' FROM 3);
                      -- Result: '34567890'
                    

TOSTRING(string_value1)

インスタンスの値を同様の文字列表現に変換します。

  • string_value1:変換される文字列。

                      SELECT TOSTRING(123);
                      -- Result: '123'

                      SELECT TOSTRING(123.456);
                      -- Result: '123.456'

                      SELECT TOSTRING(null);
                      -- Result: ''
                    

TRIM(trimspec trimchar FROM string_value)

左および/または右の空白を除いた文字式を返します。

  • trimspec:オプション。含める場合、BOTH、LEADING、TRAILING のいずれかの必要があります。
  • trimchar:オプション。含める場合、一文字の文字列値にする必要があります。
  • string_value:トリムする文字列値。

                      SELECT TRIM('     trimmed     ');
                      -- Result: 'trimmed'

                      SELECT TRIM(LEADING FROM '     trimmed     ');
                      -- Result: 'trimmed     '

                      SELECT TRIM('-' FROM '-----trimmed-----');
                      -- Result: 'trimmed'

                      SELECT TRIM(BOTH '-' FROM '-----trimmed-----');
                      -- Result: 'trimmed'

                      SELECT TRIM(TRAILING '-' FROM '-----trimmed-----');
                      -- Result: '-----trimmed'
                    

UNICODE(ncharacter_expression)

インプット式の最初の文字のUnicode 標準で定義された整数の値を返します。

  • ncharacter_expression:Unicode 文字式。

UPPER ( character_expression )

文字式の小文字データを大文字に変換して返します。

  • character_expression:文字式。

                      SELECT UPPER('MIXED case');
                      -- Result: 'MIXED CASE'
                    

XML_EXTRACT(xml, xpath [, separator])

指定されたXPath を使ってXML ドキュメントを抽出して、XML をフラット化します。デフォルトでは、出力の区切りにはカンマが使用されますが、これは3番目のパラメータを指定することで変更できます。

  • xml:抽出するXML ドキュメント。
  • xpath:ノードの選択に使用するXPath。選択されたノードの値は、トークンで区切られたリストの形式で返されます。
  • separator:フラット化された応答の中で、項目の区切りとして使用されるトークン。指定しない場合は、区切り記号はカンマになります。

                      SELECT XML_EXTRACT('<vowels><ch>a</ch><ch>e</ch><ch>i</ch><ch>o</ch><ch>u</ch></vowels>', '/vowels/ch');
                      -- Result: 'a,e,i,o,u'

                      SELECT XML_EXTRACT('<vowels><ch>a</ch><ch>e</ch><ch>i</ch><ch>o</ch><ch>u</ch></vowels>', '/vowels/ch', ';');
                      -- Result: 'a;e;i;o;u'
                    

CData Cloud

日付関数

CURRENT_DATE()

現在のdate 値を返します。

                  SELECT CURRENT_DATE();
                  -- Result: 2018-02-01
                

CURRENT_TIMESTAMP()

現在のデータベースシステムのタイムスタンプをdatetime 値で返します。この値はGETDATE およびSYSDATETIME と等しく、常にローカルタイムゾーンになります。

                  SELECT CURRENT_TIMESTAMP();
                  -- Result: 2018-02-01 03:04:05
                

DATEADD (datepart , integer_number , date [, dateformat])

date の指定されたdatepart に、指定されたnumber(符号付き整数)を加算したdatetime 値を返します。

  • datepart:整数値が加算される日付の部分。有効な値(およびその省略形)は、year(yy、yyyy)、quarter(qq、q)、month(mm、m)、dayofyear(dy、y)、day(dd、d)、week(wk、ww)、weekday(dw)、hour(hh)、minute(mi、n)、second(ss、s)、millisecond(ms)です。
  • number:加算される数値。
  • date:datetime データ型の式。
  • dateformat:出力日付形式(オプション)。

                  SELECT DATEADD('d', 5, '2018-02-01');
                  -- Result: 2018-02-06

                  SELECT DATEADD('hh', 5, '2018-02-01 00:00:00');
                  -- Result: 2018-02-01 05:00:00
                

DATEDIFF (datepart , startdate , enddate)

指定されたstartdate とenddate の差(符号付き整数)を返します。

  • datepart:整数値が加算される日付の部分。有効な値(およびその省略形)は、day(dd、d)、hour(hh)、minute(mi、n)、second(ss、s)、millisecond(ms)です。
  • startdate:開始日のdatetime 式。
  • enddate:終了日のdatetime 式。

                  SELECT DATEDIFF('d', '2018-02-01', '2018-02-10');
                  -- Result: 9

                  SELECT DATEDIFF('hh', '2018-02-01 00:00:00', '2018-02-01 12:00:00');
                  -- Result: 12
                

DATEFROMPARTS(integer_year, integer_month, integer_day)

指定された年、月、および日のdatetime 値を返します。

  • year:年を指定する整数式。
  • month:1〜12 までの月を指定する整数式。
  • day:日にちを指定する整数式。

                    SELECT DATEFROMPARTS(2018, 2, 1);
                    -- Result: 2018-02-01
                  

DATENAME(datepart , date)

指定されたdate の指定されたdatepart を表す文字列を返します。

  • datepart:返される日付の部分。有効な値(およびその省略形)は、year(yy、yyyy)、quarter(qq、q)、month(mm、m)、dayofyear(dy、y)、day(dd、d)、week(wk、ww)、weekday(dw)、hour(hh)、minute(mi、n)、second(ss、s)、millisecond(ms)、microsecond(mcs)、nanosecond(ns)、TZoffset(tz)です。
  • date:datetime 式。

                     SELECT DATENAME('yy', '2018-02-01');
                     -- Result: '2018'

                     SELECT DATENAME('dw', '2018-02-01');
                     -- Result: 'Thursday'
                   

DATEPART(datepart, date [,integer_datefirst])

指定されたdate の指定されたdatepart を表す文字列を返します。

  • datepart:返される日付の部分。有効な値(およびその省略形)は、year (yy, yyyy)、quarter (qq, q)、month (mm, m)、dayofyear (dy, y)、day (dd, d)、week (wk, ww)、weekday (dw)、hour (hh)、minute (mi, n)、second (ss, s)、millisecond (ms)、microsecond (mcs)、nanosecond (ns)、TZoffset (tz)、ISODOW、ISO_WEEK (isoweek, isowk,isoww)、ISOYEAR です。
  • date:datetime 文字列。
  • datefirst:週の最初の曜日に対応する整数(オプション)。ディフォルト値は7、日曜日。

                    SELECT DATEPART('yy', '2018-02-01');
                    -- Result: 2018

                    SELECT DATEPART('dw', '2018-02-01');
                    -- Result: 5
                  

DATETIME2FROMPARTS(integer_year, integer_month, integer_day, integer_hour, integer_minute, integer_seconds, integer_fractions, integer_precision)

指定されたdatepart のdatetime 値を返します。

  • year:年を指定する整数式。
  • month:1〜12 までの月を指定する整数式。
  • day:日にちを指定する整数式。
  • hour:時間を指定する整数式。
  • minute:分を表す整数式。
  • seconds:秒を指定する整数式。
  • fractions:小数部分を表す整数式。
  • precision:小数部分の有効桁数を指定する整数式。

                    SELECT DATETIME2FROMPARTS(2018, 2, 1, 1, 2, 3, 456, 3);
                    -- Result: 2018-02-01 01:02:03.456
                  

DATETIMEFROMPARTS(integer_year, integer_month, integer_day, integer_hour, integer_minute, integer_seconds, integer_milliseconds)

指定されたdatepart のdatetime 値を返します。

  • year:年を指定する整数式。
  • month:1〜12 までの月を指定する整数式。
  • day:日にちを指定する整数式。
  • hour:時間を指定する整数式。
  • minute:分を表す整数式。
  • seconds:秒を指定する整数式。
  • milliseconds:ミリ秒を指定する整数式。

                    SELECT DATETIMEFROMPARTS(2018, 2, 1, 1, 2, 3, 456);
                    -- Result: 2018-02-01 01:02:03.456
                  

DATE_TRUNC(date, datepart)

指定されたdatepart の精度に日付を切り捨てます。Oracle TRUNC 関数をモデルにしています。

  • date:日付を指定するdatetime 文字列。
  • datepart:有効なdatepart 構文についてはOracle documentation を参照してください。

				    SELECT DATE_TRUNC('05-04-2005', 'YY');
                    -- Result: '1/1/2005'
					
                    SELECT DATE_TRUNC('05-04-2005', 'MM');
                    -- Result: '5/1/2005'                    
                  

DATE_TRUNC2(datepart, date, [weekday])

指定されたdatepart の精度に日付を切り捨てます。PostgreSQL date_trunc 関数をモデルにしています。

  • datepart:'millennium'、'century'、'decade'、'year'、'quarter'、'month'、'week'、'day'、'hour'、'minute' 、または'second' のいずれか。
  • date:日付を指定するdatetime 文字列。
  • weekday:週の最初の日として使用する曜日(オプション)。'sunday'、'monday' など。

                    SELECT DATE_TRUNC2('year', '2020-02-04');
                    -- Result: '2020-01-01'

                    SELECT DATE_TRUNC2('week', '2020-02-04', 'monday');
                    -- Result: '2020-02-02', which is the previous Monday
                  

DAY(date)

指定されたdate の日コンポーネントを指定する整数を返します。

  • date:日付を指定するdatetime 文字列。

                    SELECT DAY('2018-02-01');
                    -- Result: 1
                  

DAYOFMONTH(date)

指定されたdate 部分の日にちを返します。
  • date:日付を指定するdatetime 文字列。

				  SELECT DAYOFMONTH('04/15/2000');
				  -- Result: 15
				  

DAYOFWEEK(date)

指定されたdate 部分の曜日を返します。
  • date:日付を指定するdatetime 文字列。

				  SELECT DAYOFWEEK('04/15/2000');
				  -- Result: 7
				  

DAYOFYEAR(date)

指定されたdate 部分の年の通日を返します。
  • date:日付を指定するdatetime 文字列。

				  SELECT DAYOFYEAR('04/15/2000');
				  -- Result: 106
				  

EOMONTH(date [, integer_month_to_add ]) or LAST_DAY(date)

指定されたdate を含む月、またはオプションでその月からオフセットされた月の最終日を返します。

  • date:月の最終日を返す日付を指定するdatetime 式。
  • integer_month_to_add:月末を計算する前に日付に追加する月数を指定する整数式(オプション)。

                  SELECT EOMONTH('2018-02-01');
                  -- Result: 2018-02-28
                  
                  SELECT LAST_DAY('2018-02-01');
                  -- Result: 2018-02-28

                  SELECT EOMONTH('2018-02-01', 2);
                  -- Result: 2018-04-30
                

FDWEEK(date)

指定されたdate 部分の週の最初の日付を返します。
  • date:日付を指定するdatetime 文字列。

				  SELECT FDWEEK('02-08-2018');
				  -- Result: 2/4/2018
				  

FDMONTH(date)

指定されたdate 部分の月の最初の日付を返します。
  • date:日付を指定するdatetime 文字列。

				  SELECT FDMONTH('02-08-2018');
				  -- Result: 2/1/2018
				  

FDQUARTER(date)

指定されたdate 部分の四半期の最初の日付を返します。
  • date:日付を指定するdatetime 文字列。

				  SELECT FDQUARTER('05-08-2018');
				  -- Result: 4/1/2018
				  

FILEMODIFIEDTIME(uri)

関連ファイルの変更日に関連付けられたタイムスタンプを返します。

  • uri:ローカルファイルシステム上のファイルを指す絶対パス。

				 SELECT FILEMODIFIEDTIME('C:/Documents/myfile.txt');
				 -- Result: 6/25/2019 10:06:58 AM
				 

FROM_DAYS(datevalue)

1582-10-15以降の日数から派生した日付を返します(グレゴリオ暦に基づく)。これはMYSQL FROM_DAYS 関数と同等です。

  • datevalue:1582-10-15からの日数を表す整数値。

				SELECT FROM_DAYS(736000);
				-- Result: 2/6/2015
				

GETDATE()

現在のデータベースシステムのタイムスタンプをdatetime 値で返します。この値はCURRENT_TIMESTAMP およびSYSDATETIME と等しく、常にローカルタイムゾーンになります。

                  SELECT GETDATE();
                  -- Result: 2018-02-01 03:04:05
                

GETUTCDATE()

UTC datetime 値としてフォーマットされた現在のデータベースシステムのタイムスタンプを返します。SYSUTCDATETIME と同じです。

                  SELECT GETUTCDATE();
                  -- For example, if the local timezone is Eastern European Time (GMT+2)
                  -- Result: 2018-02-01 05:04:05
                

HOUR(date)

指定されたdatetime から時間コンポーネントを返します。

  • date:日付を指定するdatetime 文字列。

				SELECT HOUR('02-02-2020 11:30:00');
				-- Result: 11
				

ISDATE(date, [date_format])

この値が有効なdate、time、またはdatetime 値である場合は1を返します。それ以外の場合は0を返します。

  • date:datetime 文字列。
  • date_format:datetime 形式(オプション)。

                      SELECT ISDATE('2018-02-01', 'yyyy-MM-dd');
                      -- Result: 1

                      SELECT ISDATE('Not a date');
                      -- Result: 0
                    

LAST_WEEK()

現在の日付のちょうど一週間前のタイムスタンプを返します。

				SELECT LAST_WEEK();	//Assume the date is 3/17/2020	
				-- Result: 3/10/2020
				

LAST_MONTH()

現在の日付のちょうど一ヶ月前のタイムスタンプを返します。

				SELECT LAST_MONTH(); //Assume the date is 3/17/2020	
				-- Result: 2/17/2020
				

LAST_YEAR()

現在の日付のちょうど一年前のタイムスタンプを返します。

				SELECT LAST_YEAR();	//Assume the date is 3/17/2020	
				-- Result: 3/10/2019
				

LDWEEK(date)

指定された週の最終日を返します。

  • date:datetime 文字列。

				SELECT LDWEEK('02-02-2020');
				-- Result: 2/8/2020
				

LDMONTH(date)

指定された月の最終日を返します。

  • date:datetime 文字列。

				SELECT LDMONTH('02-02-2020');
				-- Result: 2/29/2020
				

LDQUARTER(date)

指定された四半期の最終日を返します。

  • date:datetime 文字列。

				SELECT LDQUARTER('02-02-2020');
				-- Result: 3/31/2020
				

MAKEDATE(year, days)

年と日数から日付値を返します。

  • year:年
  • days:その年の日数。値は1より大きい必要があります。

          SELECT MAKEDATE(2020, 1);
          -- Result: 2020-01-01
        

MINUTE(date)

指定されたdatetime から分コンポーネントを返します。

  • date:日付を指定するdatetime 文字列。

				SELECT MINUTE('02-02-2020 11:15:00');
				-- Result: 15
				

MONTH(date)

指定されたdatetime から月コンポーネントを返します。

  • date:日付を指定するdatetime 文字列。

				SELECT MONTH('02-02-2020');
				-- Result: 2
				

QUARTER(date)

指定されたdatetime に関連付けられた四半期を返します。

  • date:日付を指定するdatetime 文字列。

				SELECT QUARTER('02-02-2020');
				-- Result: 1
				

SECOND(date)

指定されたdatetime から秒コンポーネントを返します。

  • date:日付を指定するdatetime 文字列。

				SELECT SECOND('02-02-2020 11:15:23');
				-- Result: 23
				

SMALLDATETIMEFROMPARTS(integer_year, integer_month, integer_day, integer_hour, integer_minute)

指定された日時のdatetime 値を返します。

  • year:年を指定する整数式。
  • month:1〜12 までの月を指定する整数式。
  • day:日にちを指定する整数式。
  • hour:時間を指定する整数式。
  • minute:分を指定する整数式。

                      SELECT SMALLDATETIMEFROMPARTS(2018, 2, 1, 1, 2);
                      -- Result: 2018-02-01 01:02:00
                    

STRTODATE(string,format)

指定された文字列値をパースし、対応する日時を返します。

  • string:datetime 形式に変換される文字列値。
  • format:最初の文字列入力を解釈する方法を説明するフォーマット文字列。 UNIX、UNIXMILIS、TICKS、FILETICKS など、いくつかの特殊な形式も利用可能です。

				SELECT STRTODATE('03*04*2020','dd*MM*yyyy');
				-- Result: 4/3/2020
				

SYSDATETIME()

現在のタイムスタンプをデータベースシステムのdatetime 値として返します。この値はGETDATE およびCURRENT_TIMESTAMP と等しく、常にローカルタイムゾーンになります。

                  SELECT SYSDATETIME();
                  -- Result: 2018-02-01 03:04:05
                

SYSUTCDATETIME()

現在のシステム日時をUTC datetime 値として返します。GETUTCDATE と同じです。

                  SELECT SYSUTCDATETIME();
                  -- For example, if the local timezone is Eastern European Time (GMT+2)
                  -- Result: 2018-02-01 05:04:05
                

TIMEFROMPARTS(integer_hour, integer_minute, integer_seconds, integer_fractions, integer_precision)

指定されたhour、minute、およびsecond のtime 値を指定した有効桁数で返します。

  • hour:時間を指定する整数式。
  • minute:分を指定する整数式。
  • seconds:秒を指定する整数式。
  • fractions:小数部分を表す整数式。
  • precision :有効桁数を表す整数式。

                      SELECT TIMEFROMPARTS(1, 2, 3, 456, 3);
                      -- Result: 01:02:03.456
                    

TO_DAYS(date)

0000-00-01以降の日数を返します。1582-10-15以降の日付に対してのみ値を返します(グレゴリオ暦に基づく)。これはMYSQL TO_DAYS 関数と同等です。

  • date:日付を指定するdatetime 文字列。

				SELECT TO_DAYS('02-06-2015');
				-- Result: 736000
				

WEEK(date)

指定されたdatetime に関連付けられた(その年の)週を返します。

  • date:日付を指定するdatetime 文字列。

				SELECT WEEK('02-17-2020 11:15:23');
				-- Result: 8
				

YEAR(date)

指定されたdate の年を表す整数を返します。

  • date:datetime 文字列。

                      SELECT YEAR('2018-02-01');
                      -- Result: 2018
                    

CData Cloud

算術関数

ABS ( numeric_expression )

指定された数値の絶対値(正の値)を返します。

  • numeric_expression:真数(exact numeric)または概数(approximate numeric)データ型カテゴリの式(bit データ型を除く)。

                      SELECT ABS(15);
                      -- Result: 15

                      SELECT ABS(-15);
                      -- Result: 15
                    

ACOS ( float_expression )

指定された浮動小数点式がコサインの値となる角度をラジアン単位で返します。これは、アークコサインとも呼ばれます。

  • float_expression:-1〜1の値を使用する浮動小数点数。この範囲外の値を使用すると、null が返されます。

                      SELECT ACOS(0.5);
                      -- Result: 1.0471975511966
                    

ASIN ( float_expression )

指定された浮動小数点式がサインの値となる角度をラジアン単位で返します。これは、アークサインとも呼ばれます。

  • float_expression:-1〜1の値を使用する浮動小数点数の式。この範囲外の値を使用すると、null が返されます。

                      SELECT ASIN(0.5);
                      -- Result: 0.523598775598299
                    

ATAN ( float_expression )

指定された浮動小数点式がタンジェントの値となる角度をラジアン単位で返します。これは、アークタンジェントとも呼ばれます。

  • float_expression:浮動小数点型の式。

                      SELECT ATAN(10);
                      -- Result: 1.47112767430373
                    

ATN2 ( float_expression1 , float_expression2 )

正のx 軸と原点から点(y, x) までの線との間の角度をラジアン単位で返します。x とy は、指定された2つの浮動小数点式です。

  • float_expression1:浮動小数点型の式。
  • float_expression2:浮動小数点型の式。

                      SELECT ATN2(1, 1);
                      -- Result: 0.785398163397448
                    

CEILING ( numeric_expression ) or CEIL( numeric_expression )

指定された数値式以上で最小の整数を返します。

  • numeric_expression:真数(exact numeric)または概数(approximate numeric)データ型カテゴリの式(bit データ型を除く)。

                      SELECT CEILING(1.3);
                      -- Result: 2

                      SELECT CEILING(1.5);
                      -- Result: 2

                      SELECT CEILING(1.7);
                      -- Result: 2
                    

COS ( float_expression )

指定された式で示されるラジアン単位の角度の三角関数コサインを返します。

  • float_expression:浮動小数点型の式。

                      SELECT COS(1);
                      -- Result: 0.54030230586814
                    

COT ( float_expression )

指定された浮動小数点式で示されるラジアン単位の角度の三角関数コタンジェントを返します。

  • float_expression:浮動小数点型の式。

                      SELECT COT(1);
                      -- Result: 0.642092615934331
                    

DEGREES ( numeric_expression )

ラジアン単位で指定された角度に相当する度単位の角度を返します。

  • numeric_expression:真数(exact numeric)または概数(approximate numeric)データ型カテゴリの式(bit データ型を除く)。

                      SELECT DEGREES(3.1415926);
                      -- Result: 179.999996929531
                    

EXP ( float_expression )

指定された浮動小数点値の指数値を返します。例えば、EXP(LOG(20)) は20です。

  • float_expression:浮動小数点型の式。

                      SELECT EXP(2);
                      -- Result: 7.38905609893065
                    

EXPR ( expression )

式を評価します。

  • expression:数値データ型の式。使用できる演算子は、+, -, *, /, ==, !=, >, <, >=, および <= です。

                      SELECT EXPR('1 + 2 * 3');
                      -- Result: 7

                      SELECT EXPR('1 + 2 * 3 == 7');
                      -- Result: true
                    

FLOOR ( numeric_expression )

指定された数値式以下で最大の整数を返します。

  • numeric_expression:真数(exact numeric)または概数(approximate numeric)データ型カテゴリの式(bit データ型を除く)。

                      SELECT FLOOR(1.3);
                      -- Result: 1

                      SELECT FLOOR(1.5);
                      -- Result: 1

                      SELECT FLOOR(1.7);
                      -- Result: 1
                    

GREATEST(int1,int2,....)

指定された整数の最大値を返します。

				SELECT GREATEST(3,5,8,10,1)
				-- Result: 10			
				

HEX(value)

入力値に相当する16進数を返します。

  • value:16進数に変換される文字列または数値。

				SELECT HEX(866849198);
				-- Result: 33AB11AE
				
				SELECT HEX('Sample Text');
				-- Result: 53616D706C652054657874
				

LEAST(int1,int2,....)

指定された整数の最小値を返します。

				SELECT LEAST(3,5,8,10,1)
				-- Result: 1			
				

LOG ( float_expression [, base ] )

指定された浮動小数点式の自然対数を返します。

  • float_expression:浮動小数点の式。
  • base:対数の底を設定する整数引数(オプション)。

                      SELECT LOG(7.3890560);
                      -- Result: 1.99999998661119
                    

LOG10 ( float_expression )

指定された浮動小数点式の10を底とする対数を返します。

  • float_expression:浮動小数点型の式。

                      SELECT LOG10(10000);
                      -- Result: 4
                    

MOD(dividend,divisor)

被除数を除数で除算したときの余剰に関連付けられた整数値を返します。

  • dividend:係数をとる数。
  • divisor:係数を決定するときに被除数を除算する数。

				SELECT MOD(10,3);
				-- Result: 1
				

NEGATE(real_number)

実数入力のopposite を返します。

  • real_number:opposite を見つけるための実数。

				SELECT NEGATE(10);
				-- Result: -10
				
				SELECT NEGATE(-12.4)
				--Result: 12.4
				

PI ( )

PI の定数値を返します。

                  SELECT PI()
                  -- Result: 3.14159265358979 
                

POWER ( float_expression , y )

指定された式の指定されたべき乗値を返します。

  • float_expression:浮動小数点型の式。
  • y:float_expression のべき乗。

                      SELECT POWER(2, 10);
                      -- Result: 1024

                      SELECT POWER(2, -2);
                      -- Result: 0.25
                    

RADIANS ( float_expression )

数値式が度単位で入力されたときのラジアン値を返します。

  • float_expression:真数(exact numeric)または概数(approximate numeric)データ型カテゴリの式(bit データ型を除く)。

                      SELECT RADIANS(180);
                      -- Result: 3.14159265358979
                    

RAND ( [ integer_seed ] )

0と1の間の(0と1は除く)の疑似乱数(浮動小数点値)を返します。

  • seed:seed 値を提供する整数式(オプション)。seed を指定しない場合は、ランダムなseed 値が割り当てられます。

                      SELECT RAND();
                      -- This result may be different, since the seed is randomized
                      -- Result: 0.873159630165044

                      SELECT RAND(1);
                      -- This result will always be the same, since the seed is constant
                      -- Result: 0.248668584157093
                    

ROUND ( numeric_expression [ ,integer_length] [ ,function ] )

指定された長さまたは有効桁数に丸められた数値を返します。

  • numeric_expression:数値の式。
  • length:numeric_expression を丸める有効桁数(オプション)。これを省略した場合、デフォルトの動作では最も近い整数に丸められます。
  • function:実行する操作の種類(オプション)。function パラメータを省略した場合、または0(デフォルト)の値を指定した場合、numeric_expression は丸められます。0以外の値を指定した場合、numeric_expression は切り捨てられます。

                      SELECT ROUND(1.3, 0);
                      -- Result: 1

                      SELECT ROUND(1.55, 1);
                      -- Result: 1.6

                      SELECT ROUND(1.7, 0, 0);
                      -- Result: 2

                      SELECT ROUND(1.7, 0, 1);
                      -- Result: 1
                      
                      SELECT ROUND (1.24);
                      -- Result: 1.0
                    

SIGN ( numeric_expression )

指定された式の符号を、正(+1)、ゼロ(0)、または負(-1)で返します。

  • numeric_expression:真数(exact numeric)または概数(approximate numeric)データ型カテゴリの式(bit データ型を除く)。

                      SELECT SIGN(0);
                      -- Result: 0

                      SELECT SIGN(10);
                      -- Result: 1

                      SELECT SIGN(-10);
                      -- Result: -1
                    

SIN ( float_expression )

指定された角度の三角関数のサイン値をラジアン単位で返します。

  • float_expression:浮動小数点型の式。

                     SELECT SIN(1);
                     -- Result: 0.841470984807897
                    

SQRT ( float_expression )

指定された浮動小数点値の平方根を返します。

  • float_expression:浮動小数点型の式。

                      SELECT SQRT(100);
                      -- Result: 10
                    

SQUARE ( float_expression )

指定された浮動小数点値の2乗を返します。

  • float_expression:浮動小数点型の式。

                      SELECT SQUARE(10);
                      -- Result: 100

                      SELECT SQUARE(-10);
                      -- Result: 100
                    

TAN ( float_expression )

入力式のタンジェントを返します。

  • float_expression:浮動小数点型の式。

                      SELECT TAN(1);
                      -- Result: 1.5574077246549
                    

TRUNC(decimal_number,precision)

指定された小数精度に切り捨てられた、指定された10進数を返します。

  • decimal_number:切り捨てる10進数値。
  • precision:10進数を切り捨てる小数点以下の桁数。

				SELECT TRUNC(10.3423,2);
				-- Result: 10.34
				

CData Cloud

CACHE ステートメント

CData Cloud

EXECUTE ステートメント

ストアドプロシージャを実行するには、EXECUTE またはEXEC ステートメントを使用できます。

EXEC およびEXECUTE は、名前で参照されたストアドプロシージャのインプットを値またはパラメータ名に割当てます。

ストアドプロシージャ構文

ストアドプロシージャをSQL ステートメントとして実行するには、次の構文を使用します。

 
{ EXECUTE | EXEC } <stored_proc_name> 
{
  [ @ ] <input_name> = <expression>
} [ , ... ]

<expression> ::=
  | @ <parameter> 
  | ?
  | <literal>

ステートメントの例

名前によるストアドプロシージャのインプットの参照:

EXECUTE my_proc @second = 2, @first = 1, @third = 3;

パラメータ化されたストアドプロシージャ構文の実行:

EXECUTE my_proc second = @p1, first = @p2, third = @p3; 

CData Cloud

PIVOT およびUNPIVOT

PIVOT and UNPIVOT can be used to change a table-valued expression into another table.

PIVOT

PIVOT rotates a table-value expression by turning unique values from one column into multiple columns in the output. PIVOT can run aggregations where required on any column value.
PIVOT Synax

 
"SELECT 'AverageCost' AS Cost_Sorted_By_Production_Days, [0], [1], [2], [3], [4]
FROM
(
SELECT DaysToManufacture, StandardCost
FROM Production.Product
) AS SourceTable
PIVOT
(
AVG(StandardCost)
FOR DaysToManufacture IN ([0], [1], [2], [3], [4])
) AS PivotTable;"

UNPIVOT

UNPIVOT carries out nearly the opposite to PIVOT by rotating columns of a table-valued expressions into column values.
UNPIVOT Sytax

 
"SELECT VendorID, Employee, Orders
FROM
(SELECT VendorID, Emp1, Emp2, Emp3, Emp4, Emp5
FROM pvt) p
UNPIVOT
(Orders FOR Employee IN
(Emp1, Emp2, Emp3, Emp4, Emp5)
)AS unpvt;"

For further information on PIVOT and UNPIVOT, see FROM clause plus JOIN, APPLY, PIVOT (Transact-SQL)

CData Cloud

データモデル

このセクションでは、Cloud がAmazon S3 API をリレーショナルビューおよびストアドプロシージャとしてモデル化する方法を説明します。

主要機能

  • Cloud はAmazon S3 バケット、バケット情報、およびオブジェクトをリレーショナルビューとしてモデル化し、SQL を記述してAmazon S3 データをクエリできるようにします。
  • ストアドプロシージャを使用すると、オブジェクトのダウンロードやアップロードなど、Amazon S3 の操作を実行できます。
  • これらのオブジェクトへのライブ接続により、Cloud を使用するとAmazon S3 アカウントへのあらゆる変更が即座に反映されます。

ビュー

バケット、バケット情報、オブジェクトなどAmazon S3 データへの読み取り専用アクセスには、事前定義されたビュー を使用できます。

ストアドプロシージャ

ストアドプロシージャを使用すると、オブジェクトのダウンロードやアップロードなど、Amazon S3 の操作を実行できます。

システムテーブル

システムテーブル には、データベースに属するオブジェクトとリソースに関する情報が含まれています。

CData Cloud

テーブル

Cloud はAmazon S3 のデータを、標準のSQL ステートメントを使用してクエリできるテーブルのリストにモデル化します。

一般的には、Amazon S3 テーブルのクエリは、リレーショナルデータベースのテーブルのクエリと同じです。時には特別なケースもあります。例えば、テーブルの特定のカラムデータを取得するために特定のカラムをWHERE 句に含める必要がある場合などです。これは通常、特定のカラムを取得するために行ごとに個別のリクエストを行う必要がある場合に必要です。これらの特別な状況は、以下にリンクされているテーブルページの上部に明確に文書化されています。

CData Cloud - Amazon S3 テーブル

Name Description
Buckets Returns information for buckets. Buckets are used to store objects, which consist of data and its metadata.
Objects Returns information for objects inside a specific bucket.

CData Cloud

Buckets

Returns information for buckets. Buckets are used to store objects, which consist of data and its metadata.

Table Specific Information

Select

The Cloud uses the Amazon S3 API to process search criteria that refers to the Name column. The Cloud processes other filters client side within the Cloud. For example, the following queries are processed server side.

SELECT * FROM Buckets

SELECT * FROM Buckets WHERE Name = 'TestBucket'

Insert

To insert a Bucket, specify the primary key of the Bucket in the INSERT query. For example, the following query inserts a bucket from Amazon S3:

INSERT INTO Buckets (Bucket) VALUES ('TestBucket')

Delete

To delete a Bucket, specify the primary key of the Bucket in the DELETE query. For example, the following query deletes a bucket from Amazon S3:

DELETE FROM Buckets WHERE Bucket = 'MyBucket'

Columns

Name Type ReadOnly Description
Bucket [KEY] String False

The bucket's name.

CreationDate Timestamp False

The date the bucket was created.

OwnerId String False

The bucket owner's canonical user ID.

OwnerDisplayName String False

The bucket owner's display name.

CData Cloud

Objects

Returns information for objects inside a specific bucket.

Table Specific Information

Select

The Cloud uses the Amazon S3 API to process search criteria that refers to the Object and Bucket columns. The Cloud processes other filters client side within the Cloud. For example, the following queries are processed server side.

SELECT * FROM Objects

SELECT * FROM Objects WHERE Object = 'TestObject'

SELECT * FROM Objects WHERE Bucket = 'TestBucket'

SELECT * FROM Objects WHERE Object = 'TestObject' AND Bucket = 'TestBucket'

Insert

INSERT queries are not supported to create new Objects. In order to create new Objects in Amazon S3, use the Stored Procedure UploadObject.

Delete

To delete an Object, specify the primary keys of the Object in the DELETE query. For example, the following query deletes an object from Amazon S3:

DELETE FROM Objects WHERE Object = 'MyObject' AND Bucket = 'MyBucket'

Columns

Name Type ReadOnly Description
Object [KEY] String False

Objects's name.

Description String False

Object's description.

LastModified Datetime False

Date the object was last modified.

OwnerId String False

Objects owner's canonical user ID.

OwnerDisplayName String False

Objects owner's display name.

Size String False

Objects size.

Etag String False

Objects Etag.

Bucket [KEY] String False

Bucket in which the object is located.

CData Cloud

ビュー

ビューは、カラムと疑似カラムで構成されます。ビューは、データを示すという点でテーブルに似ていますが、ビューでは更新はサポートされません。通常、ビューとして表されるエンティティは、読み取り専用のエンティティです。多くの場合、これらのデータはストアドプロシージャを使用することで更新できます(その機能がデータソースに適用できる場合)。

ビューに対しては、通常のテーブルと同じようにクエリを実行でき、このときに返されるデータも同様です。

ビューとして公開されるクエリなどの動的ビューや、project_team ワークアイテムの特定の組み合わせを検索するためのビューがサポートされています。

CData Cloud - Amazon S3 ビュー

Name Description
BucketsACL Returns the access control list (ACL) of a bucket. An ACL allows you to set permissions on each object in a specific bucket.
BucketsAnalytics Returns an analytics configuration (identified by the analytics configuration ID) from the bucket.
BucketsCompliance Returns information for a bucket's compliance.
BucketsCORS Returns the CORS configuration information set for the bucket. CORS allows cross-domain communication.
BucketsInventory Returns an inventory configuration (identified by the inventory configuration ID) from the bucket.
BucketsLifecycle Returns the lifecycle configuration information set on the bucket.
BucketsReplication Returns a bucket's replication configuration.
ObjectsACL Returns the access control list (ACL) of an object.
ObjectsCompliance Returns information for objects compliance inside a specific bucket.
PublicAccessBlock Retrieves the PublicAccessBlock configuration for an Amazon S3 bucket.

CData Cloud

BucketsACL

Returns the access control list (ACL) of a bucket. An ACL allows you to set permissions on each object in a specific bucket.

Table Specific Information

Select

The Cloud uses the Amazon S3 API to process search criteria that refers to the Bucket column. The Cloud processes other filters client side within the Cloud. For example, the following queries are processed server side.

SELECT * FROM BucketsACL

SELECT * FROM BucketsACL WHERE Bucket = 'TestBucket'

Columns

Name Type Description
GranteeType String The display name of the user.
GranteeId String The ID of the user.
GranteeDisplayName String The display name of the user.
GranteeURI String The display name of the user.
Permission String Permission given to the user or group.
Bucket String The name of the bucket that the ACL belongs to.

CData Cloud

BucketsAnalytics

Returns an analytics configuration (identified by the analytics configuration ID) from the bucket.

Table Specific Information

Select

The Cloud uses the Amazon S3 API to process search criteria that refers to the Bucket column. The Cloud processes other filters client side within the Cloud. For example, the following queries are processed server side.

SELECT * FROM BucketsAnalytics

SELECT * FROM BucketsAnalytics WHERE Bucket = 'TestBucket'

Columns

Name Type Description
Id [KEY] String The ID that identifies the analytics configuration.
FilterPrefix String The prefix that an object must have to be included in the analytics results.
OutputSchemaVersion String The version of the output schema to use when exporting data. Must be V_1.
DestinationBucket String The Amazon Resource Name (ARN) of the bucket where analytics results are published.
DestinationFormat String Specifies the output format of the analytics results.
DestinationPrefix String The prefix that is prepended to all analytics results.
Bucket String The name of the current bucket.

CData Cloud

BucketsCompliance

Returns information for a bucket's compliance.

Columns

Name Type Description
Status String Either 'enabled' or 'disabled' to turn compliance on and off, respectively.
LockTime String The time at which the compliance settings are 'locked'.
IsLocked Boolean Indicator if the Bucket is locked.
ConditionalHold Boolean A Boolean value indicating if newly created objects are placed on conditional hold, meaning that they cannot be deleted until the conツュditional hold is explicitly turned off.
DeleteAfterRetention Boolean A Boolean value indicating if the object should be deleted automatically at the end of the retention period.
RetentionDays Integer An integer for the minimum number of days that objects are always retained after their creation date or release from conditional hold.
Bucket String Bucket in which the object is located.

CData Cloud

BucketsCORS

Returns the CORS configuration information set for the bucket. CORS allows cross-domain communication.

Table Specific Information

Select

The Cloud uses the Amazon S3 API to process search criteria that refers to the Bucket column. The Cloud processes other filters client side within the Cloud. For example, the following queries are processed server side.

SELECT * FROM BucketsCORS

SELECT * FROM BucketsCORS WHERE Bucket = 'TestBucket'

Columns

Name Type Description
Id [KEY] String An optional unique identifier for the rule.
AllowedOrigin String One or more response headers that you want customers to be able to access from their applications.
AllowedMethod String Identifies an HTTP method that the domain/origin specified in the rule is allowed to execute.
MaxAgeSeconds String The time in seconds that your browser is to cache the preflight response for the specified resource.
AllowedHeader String Specifies which headers are allowed in a pre-flight OPTIONS request through the Access-Control-Request-Headers header.
ExposeHeader String One or more headers in the response that you want customers to be able to access from their applications.
Bucket String The name of the bucket that CORS belongs to.

CData Cloud

BucketsInventory

Returns an inventory configuration (identified by the inventory configuration ID) from the bucket.

Table Specific Information

Select

The Cloud uses the Amazon S3 API to process search criteria that refers to the Bucket column. The Cloud processes other filters client side within the Cloud. For example, the following queries are processed server side.

SELECT * FROM BucketsInventory

SELECT * FROM BucketsInventory WHERE Bucket = 'TestBucket'

Columns

Name Type Description
Id [KEY] String The ID that identifies the inventory configuration.
IsEnabled String Specifies whether the inventory is enabled or disabled.
DestinationFormat String Specifies the output format of the inventory results.
DestinationBucket String The Amazon Resource Name (ARN) of the bucket where inventory results are published.
DestinationEncryption String Contains the type of server-side encryption used to encrypt the inventory results.
ScheduleFrequency String Specifies how frequently inventory results are produced.
IncludedObjectVersions String Object versions to include in the inventory list.
Bucket String The name of the current bucket.

CData Cloud

BucketsLifecycle

Returns the lifecycle configuration information set on the bucket.

Table Specific Information

Select

The Cloud uses the Amazon S3 API to process search criteria that refers to the Bucket column. The Cloud processes other filters client side within the Cloud. For example, the following queries are processed server side.

SELECT * FROM BucketsLifecycle

SELECT * FROM BucketsLifecycle WHERE Bucket = 'TestBucket'

Columns

Name Type Description
Id [KEY] String Unique identifier for the rule.
Filter String Container element describing one or more filters used to identify a subset of objects to which the lifecycle rule applies.
Status String If enabled, Amazon S3 executes the rule as scheduled. If disabled, Amazon S3 ignores the rule.
Transition Long Specifies a period in the objects' lifetime when Amazon S3 should transition them to the STANDARD_IA, ONEZONE_IA, or GLACIER storage class.
Storage String Specifies the Amazon S3 storage class to which you want to transition the object.
Expiration Long Specifies a period in the object's lifetime when Amazon S3 should take the appropriate expiration action.
Bucket String The name of the current bucket.

CData Cloud

BucketsReplication

Returns a bucket's replication configuration.

Table Specific Information

Select

The Cloud uses the Amazon S3 API to process search criteria that refers to the Bucket column. The Cloud processes other filters client side within the Cloud. For example, the following queries are processed server side.

SELECT * FROM BucketsReplication

SELECT * FROM BucketsReplication WHERE Bucket = 'TestBucket'

Columns

Name Type Description
Id [KEY] String The unique identifier for the rule.
Priority String If you specify multiple rules with overlapping filters, identifies the rule priority.
Status String Whether a rule is enabled. If Status is not set to Enabled, Amazon S3 ignores the rule
DeleteMarkerStatus String A container that describes whether Amazon S3 replicates the delete markers.
DestinationBucket String The name of the bucket where Amazon S3 stores replicas of objects identified by the rule.
Bucket String The name of the current bucket.

CData Cloud

ObjectsACL

Returns the access control list (ACL) of an object.

Table Specific Information

Select

The Cloud uses the Amazon S3 API to process search criteria that refers to the Object and Bucket columns. The Cloud processes other filters client side within the Cloud. For example, the following queries are processed server side.

SELECT * FROM ObjectsACL

SELECT * FROM ObjectsACL WHERE Object = 'TestObject'

SELECT * FROM ObjectsACL WHERE Bucket = 'TestBucket'

SELECT * FROM ObjectsACL WHERE Object = 'TestObject' AND Bucket = 'TestBucket'

Columns

Name Type Description
GranteeType String Display name of the user.
GranteeId String The ID of the user.
GranteeDisplayName String Display name of the user.
GranteeURI String Display name of the user.
Permission String Permission given to the user or group.
Bucket String Name of the bucket which includes this object.
Object String Name of the object which includes this ACL.

CData Cloud

ObjectsCompliance

Returns information for objects compliance inside a specific bucket.

Columns

Name Type Description
Object [KEY] String Objects's name.
RetentionTime Timestamp An ISO time giving a new retention time for the object in which the object cannot be deleted before this time.
ConditionalHold Boolean A Boolean value set to 'false' to release the object from the conditional hold setting in the bucket policy.
LegalHold Boolean A Boolean value to set the legal hold status.
SHA256 String An integer for the minimum number of days that objects are always retained after their creation date or release from conditional hold.
Bucket String Bucket in which the object is located.

CData Cloud

PublicAccessBlock

Retrieves the PublicAccessBlock configuration for an Amazon S3 bucket.

Table Specific Information

Select

The Cloud uses the Amazon S3 API to process search criteria that refers to the Bucket column. The Cloud processes other filters client side within the Cloud. For example, the following queries are processed server side.

SELECT * FROM PublicAccessBlock

SELECT * FROM PublicAccessBlock WHERE Bucket = 'TestBucket'

Columns

Name Type Description
BlockPublicAcls Boolean Specifies whether Amazon S3 will block public access control lists (ACLs) for this bucket and objects in this bucket.
IgnorePublicAcls Boolean Specifies whether Amazon S3 will ignore public ACLs for this bucket and objects in this bucket.
BlockPublicPolicy Boolean Specifies whether Amazon S3 will block public bucket policies for this bucket.
RestrictPublicBuckets Boolean Specifies whether Amazon S3 will restrict public bucket policies for this bucket.
Bucket String The name of the bucket that Lifecycle belongs to.

CData Cloud

ストアドプロシージャ

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

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

CData Cloud - Amazon S3 ストアドプロシージャ

Name Description
CopyObject Copies an object from one bucket to another.

CData Cloud

CopyObject

Copies an object from one bucket to another.

Input

Name Type Required Description
BucketSource String True Bucket name where the object to be copied is located.
ObjectSource String True Object name of the object that will be copied.
BucketDestination String True Bucket name where the object will be copied to.
ObjectDestination String False New name of the object in the new bucket. If not specified, the name will be the same.

Result Set Columns

Name Type Description
Status String Stored procedure execution status.

CData Cloud

DownloadObjects

Passes the name of a bucket and object to download.

Input

Name Type Required Accepts Output Streams Description
Bucket String True False Bucket name where the object is located.
Object String False False Object name for the object that should be retrieved. If not specified, all the objects from the specified bucket will be retrieved.
LocalFolderPath String False False The path, or URI, to the file that will receive the data of the object.
ByteRangeStart Long False False The start of the byte range to download.
ByteRangeEnd Long False False The end of the byte range to download.
UpdatedStartDate Datetime False False The start of the date range to download objects. If not specified, objects will be downloaded from the beginning of the time until the UpdatedEndDate.
UpdatedEndDate Datetime False False The end of the date range to download objects. If not specified, objects will be downloaded from the specified UpdatedStartDate until the present day.
FileStream String False True An instance of an output stream where file data is written to. Only used if LocalFolderPath is not set.

Result Set Columns

Name Type Description
Status String Stored procedure execution status.
Content String If the LocalFolderPath input is empty the file content will be outputted as base64.

CData Cloud

UploadObject

Uploads objects in a single operation.

Input

Name Type Required Accepts Input Streams Description
Bucket String True False Bucket name of the object location.
FolderPath String False False The path to the folder that receives the data of the object.
ChunkSize Integer False False The chunk size in MB for multi-part uploads. The value must be 5 MB or larger.

デフォルト値は15です。

LocalFilePath String False False The path to the file that is uploaded in the bucket. If this is a path to a folder, then all the files in the folder are uploaded in the bucket.
Access String False False The access policy for this object.

使用できる値は次のとおりです。PRIVATE, ANONREAD, ANONREADWRITE, AUTHREAD

デフォルト値はPRIVATEです。

ObjectInformationAggregate String False False An aggregate representing the object information. Can be in the form of XML, JSON or a #TEMP table.
Content String False True The content as InputStream to be uploaded when LocalFilePath or FolderPath is not specified.
FileName String False False FileName uploaded in Amazon S3. Required when FileContent is specified.

Result Set Columns

Name Type Description
Status String Stored procedure execution status.

CData Cloud

システムテーブル

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

スキーマテーブル

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

  • 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

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

次のクエリは、Buckets テーブルのカラムとデータ型を返します。

SELECT ColumnName, DataTypeName FROM sys_tablecolumns WHERE TableName='Buckets' 

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 カラムが配列かどうか。

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

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

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

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

Columns

Name Type Description
CatalogName String ストアドプロシージャを含むデータベースの名前。
SchemaName String ストアドプロシージャを含むスキーマの名前。
ProcedureName String パラメータを含むストアドプロシージャの名前。
ColumnName String ストアドプロシージャパラメータの名前。
Direction Int32 パラメータのタイプに対応する整数値:input (1)。input/output (2)、またはoutput(4)。input/output タイプパラメータは、入力パラメータと出力パラメータの両方になれます。
DataTypeName String データ型の名前。
DataType Int32 データ型を示す整数値。この値は、実行時に環境に基づいて決定されます。
Length Int32 文字データの場合は、許可される文字数。数値データの場合は、許可される桁数。
NumericPrecision Int32 数値データの場合は最大精度。文字データおよび日時データの場合は、カラムの長さ(文字数)。
NumericScale Int32 数値データの小数点以下の桁数。
IsNullable Boolean パラメータがNull を含められるかどうか。
IsRequired Boolean プロシージャの実行にパラメータが必要かどうか。
IsArray Boolean パラメータが配列かどうか。
Description String パラメータの説明。
Ordinal Int32 パラメータのインデックス。

CData Cloud

sys_keycolumns

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

次のクエリは、Buckets テーブルの主キーを取得します。

         SELECT * FROM sys_keycolumns WHERE IsKey='True' AND TableName='Buckets' 
          

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_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

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

このテーブルをクエリする際は、config 接続文字列を使用する必要があります。

jdbc:cdata:amazons3:config:

この接続文字列を使用すると、有効な接続がなくてもこのテーブルをクエリできます。

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

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 機能のサンプルデータセットです。 次の結果セットは、Cloud がデータソースにオフロードできる、またはクライアントサイドで処理できる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 句では、個々のテーブルの制限や要件が異なる場合がありますので注意してください。詳しくは、データモデル セクションを参照してください。

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

接続文字列オプション

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

Connection


プロパティ説明
CustomURLThe custom URL to the S3 based service. Specify this URL if the S3 based service has a different URL from the 'amazonaws.com'. Make sure to specify the full URL. For example: CustomURL=http://127.0.0.1:9000. Please note that in a custom S3 based service, views other than Buckets and Objects might not be supported to work with or might need to be configured on the custom service itself.
SimpleUploadLimitこの設定はしきい値をバイト単位で設定します。このしきい値を超えると、provider は1つのリクエストですべてをアップロードするのではなく、マルチパートでアップロードを実行します。
UseVirtualHostingTrue(デフォルト)の場合、バケットはホスト形式のリクエストを使用してリクエストで参照されます:http://bucket-name.host/yourobjectFalse に設定した場合、Bean はパス形式のリクエストを使用します:http://host/bucket-name/yourobject。

AWS Authentication


プロパティ説明
AuthScheme認証で使用されるスキーム。許容されるエンティティは:Auto、、AwsRootKeys 、AwsIAMRoles 、AwsEC2Roles 、AwsMFA 、ADFS、Okta、PingFederate 、AwsCredentialsFile 、AwsCognitoBasic 、AwsCognitoSrpです。
AWSAccessKeyAWS アカウントのアクセスキー。この値には、[AWS セキュリティ認証情報]ページからアクセスできます。
AWSSecretKeyAWS アカウントのシークレットキー。この値には、[AWS セキュリティ認証情報]ページからアクセスできます。
AWSRoleARN認証時に使用するロールのAmazon リソースネーム。
AWSPrincipalARNAWS アカウントのSAML ID プロバイダーのARN。
AWSRegionAmazon Web サービスのホスティングリージョン。
AWSSessionTokenAWS のセッショントークン。
AWSExternalIdA unique identifier that might be required when you assume a role in another account.
MFASerialNumberMFA デバイスが使用されている場合は、そのシリアル番号。
MFATokenMFA デバイスから利用できる一時トークン。
TemporaryTokenDuration一時トークンが持続する時間(秒単位)。
AWSCognitoRegionAWS Cognito のホスティングリージョン。
AWSUserPoolIdユーザープールのID。
AWSUserPoolClientAppIdユーザープールのアプリクライアントID。
AWSUserPoolClientAppSecretユーザープールのアプリクライアントシークレット。(オプション)
AWSIdentityPoolIdID プールのID。
ServerSideEncryption有効にすると、Amazon S3バケットへのファイルアップロードがサーバー側で暗号化されます。

SSO


プロパティ説明
UserSSO 経由でIDP の認証に使用するIDP ユーザー。
PasswordSSO 経由でIDP ユーザーの認証に使用するパスワード。
SSOLoginURLID プロバイダーのログインURL。
SSOPropertiesセミコロンで区切られたID プロバイダーへの接続に必要な追加プロパティ。
SSOExchangeUrlSAML 応答を処理して、Amazon S3 の資格情報と交換するために使用するURL。

SSL


プロパティ説明
SSLServerCertTLS/SSL を使用して接続するときに、サーバーが受け入れ可能な証明書。

Firewall


プロパティ説明
FirewallTypeプロキシベースのファイアウォールで使われるプロトコル。
FirewallServerプロキシベースのファイアウォールの名前もしくはIP アドレス。
FirewallPortプロキシベースのファイアウォールのTCP ポート。
FirewallUserプロキシベースのファイアウォールに認証するために使うユーザー名。
FirewallPasswordプロキシベースのファイアウォールへの認証に使われるパスワード。

Proxy


プロパティ説明
ProxyAutoDetectこれは、システムプロキシ設定を使用するかどうかを示します。これは他のプロキシ設定よりも優先されるため、カスタムプロキシ設定を使用するにはProxyAutoDetect をFALSE に設定する必要があります。
ProxyServerHTTP トラフィックをルートするためのプロキシのホストネームもしくはIP アドレス。
ProxyPortProxyServer プロキシが起動しているTCP ポート。
ProxyAuthSchemeProxyServer プロキシへの認証で使われる認証タイプ。
ProxyUserProxyServer プロキシへの認証に使われるユーザー名。
ProxyPasswordProxyServer プロキシへの認証に使われるパスワード。
ProxySSLTypeProxyServer プロキシへの接続時に使用するSSL タイプ。
ProxyExceptionsProxyServer 経由での接続が免除される宛先ホスト名またはIP のセミコロン区切りのリスト。

Logging


プロパティ説明
Logfileログファイルの名前と場所を指定するファイルパス。
Verbosityログファイルの記述をどの程度の詳細さで記載するかを決定するverbosity レベル。
LogModulesログファイルに含めるコアモジュール。
MaxLogFileSizeログファイルの最大バイトサイズ(例えば、10MB)を指定する文字列。
MaxLogFileCountログファイルの最大ファイル数を指定する文字列。

Schema


プロパティ説明
Locationテーブル、ビュー、およびストアドプロシージャを定義するスキーマファイルを格納するディレクトリへのパス。
BrowsableSchemasこのプロパティは、使用可能なスキーマのサブセットにレポートされるスキーマを制限します。例えば、BrowsableSchemas=SchemaA,SchemaB,SchemaC です。
Tablesこのプロパティは、使用可能なテーブルのサブセットにレポートされるテーブルを制限します。例えば、Tables=TableA,TableB,TableC です。
Views使用可能なテーブルのサブセットにレポートされるビューを制限します。例えば、Views=ViewA,ViewB,ViewC です。

Caching


プロパティ説明
AutoCacheSELECT クエリの結果を、 CacheLocation 、または CacheConnection と CacheProvider の両方で指定されたキャッシュデータベースに自動的にキャッシュします。
CacheLocationキャッシュデータベースへのパスとファイル名を指定します。
CacheToleranceAutoCache 使用時のキャッシュ内の失効データに対する許容範囲の秒数。
Offlineオフラインモードを使用して、ライブソースではなくキャッシュからデータを取得します。
CacheMetadataこのプロパティは、テーブルメタデータをファイルストアにキャッシュするかどうかを決定します。

Miscellaneous


プロパティ説明
CreateFoldersOnDownloadAutomatically create the destination folder during execution of DownloadObjects Stored Procedure.
EncodeFilenameDetermines if the local file path in DownloadObjects Stored Procedure should be encoded.
MaxRowsクエリで集計またはグループ化を使用しない場合に返される行数を制限します。これにより、設計時にパフォーマンスの問題を回避できます。
MaxThreads同時リクエスト数を指定します。
Otherこれらの隠しプロパティは特定のユースケースでのみ使用されます。
PseudoColumnsこのプロパティは、テーブルのカラムとして疑似カラムが含まれているかどうかを示します。
RTKライセンス供与で使用されるランタイムキー。
Timeoutタイムアウトエラーがスローされ、処理をキャンセルするまでの秒数。
UserDefinedViewsA filepath pointing to the JSON configuration file containing your custom views.
CData Cloud

Connection

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


プロパティ説明
CustomURLThe custom URL to the S3 based service. Specify this URL if the S3 based service has a different URL from the 'amazonaws.com'. Make sure to specify the full URL. For example: CustomURL=http://127.0.0.1:9000. Please note that in a custom S3 based service, views other than Buckets and Objects might not be supported to work with or might need to be configured on the custom service itself.
SimpleUploadLimitこの設定はしきい値をバイト単位で設定します。このしきい値を超えると、provider は1つのリクエストですべてをアップロードするのではなく、マルチパートでアップロードを実行します。
UseVirtualHostingTrue(デフォルト)の場合、バケットはホスト形式のリクエストを使用してリクエストで参照されます:http://bucket-name.host/yourobjectFalse に設定した場合、Bean はパス形式のリクエストを使用します:http://host/bucket-name/yourobject。
CData Cloud

CustomURL

The custom URL to the S3 based service. Specify this URL if the S3 based service has a different URL from the 'amazonaws.com'. Make sure to specify the full URL. For example: CustomURL=http://127.0.0.1:9000. Please note that in a custom S3 based service, views other than Buckets and Objects might not be supported to work with or might need to be configured on the custom service itself.

データ型

string

デフォルト値

""

解説

The custom URL to the S3 based service. Specify this URL if the S3 based service has a different URL from the 'amazonaws.com'. Make sure to specify the full URL. For example: CustomURL=http://127.0.0.1:9000. Please note that in a custom S3 based service, views other than Buckets and Objects might not be supported to work with or might need to be configured on the custom service itself.

CData Cloud

SimpleUploadLimit

この設定はしきい値をバイト単位で設定します。このしきい値を超えると、provider は1つのリクエストですべてをアップロードするのではなく、マルチパートでアップロードを実行します。

データ型

string

デフォルト値

""

解説

この設定はしきい値をバイト単位で設定します。このしきい値を超えると、Cloud は1つのリクエストですべてをアップロードするのではなく、マルチパートでアップロードを実行します。

CData Cloud

UseVirtualHosting

True(デフォルト)の場合、バケットはホスト形式のリクエストを使用してリクエストで参照されます:http://bucket-name.host/yourobjectFalse に設定した場合、Bean はパス形式のリクエストを使用します:http://host/bucket-name/yourobject。

データ型

bool

デフォルト値

true

解説

True(デフォルト)の場合、バケットはホスト形式のリクエストを使用してリクエストで参照されます:http://bucket-name.host/yourobjectFalse に設定した場合、Bean はパス形式のリクエストを使用します:http://host/bucket-name/yourobject。

CData Cloud

AWS Authentication

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


プロパティ説明
AuthScheme認証で使用されるスキーム。許容されるエンティティは:Auto、、AwsRootKeys 、AwsIAMRoles 、AwsEC2Roles 、AwsMFA 、ADFS、Okta、PingFederate 、AwsCredentialsFile 、AwsCognitoBasic 、AwsCognitoSrpです。
AWSAccessKeyAWS アカウントのアクセスキー。この値には、[AWS セキュリティ認証情報]ページからアクセスできます。
AWSSecretKeyAWS アカウントのシークレットキー。この値には、[AWS セキュリティ認証情報]ページからアクセスできます。
AWSRoleARN認証時に使用するロールのAmazon リソースネーム。
AWSPrincipalARNAWS アカウントのSAML ID プロバイダーのARN。
AWSRegionAmazon Web サービスのホスティングリージョン。
AWSSessionTokenAWS のセッショントークン。
AWSExternalIdA unique identifier that might be required when you assume a role in another account.
MFASerialNumberMFA デバイスが使用されている場合は、そのシリアル番号。
MFATokenMFA デバイスから利用できる一時トークン。
TemporaryTokenDuration一時トークンが持続する時間(秒単位)。
AWSCognitoRegionAWS Cognito のホスティングリージョン。
AWSUserPoolIdユーザープールのID。
AWSUserPoolClientAppIdユーザープールのアプリクライアントID。
AWSUserPoolClientAppSecretユーザープールのアプリクライアントシークレット。(オプション)
AWSIdentityPoolIdID プールのID。
ServerSideEncryption有効にすると、Amazon S3バケットへのファイルアップロードがサーバー側で暗号化されます。
CData Cloud

AuthScheme

認証で使用されるスキーム。許容されるエンティティは:Auto、、AwsRootKeys 、AwsIAMRoles 、AwsEC2Roles 、AwsMFA 、ADFS、Okta、PingFederate 、AwsCredentialsFile 、AwsCognitoBasic 、AwsCognitoSrpです。

Possible Values

Auto, ADFS, AwsRootKeys, AwsIAMRoles, AwsEC2Roles, AwsMFA, AwsCredentialsFile, Okta, TemporaryCredentials, PingFederate, AwsCognitoBasic, AwsCognitoSrp

データ型

string

デフォルト値

"Auto"

解説

次のオプションを使って、認証スキームを選択してください。

  • Auto:これを設定すると、Cloud は、指定された他の接続プロパティに基づいて、使用する適切な認証スキームを自動的に解決しようとします。
  • TemporaryCredentials:これを設定すると、一時的なセキュリティ認証情報を、接続するセッショントークンと一緒に利用して接続できます。
  • AwsRootKeys:ルートユーザーのアクセスキーおよびシークレットが使用されます。クイックテストには便利ですが、本番環境のユースケースでは、権限を絞ったものを使用することをお勧めします。
  • AwsIAMRoles:接続にIAM ロールが使用されます。
  • AwsEC2Roles:これを設定すると、CData Cloud が現在実行中のEC2マシンに割り当てられたIAM ロールが自動的に使用されます。
  • AwsMFA:マルチファクタ認証を使用するために設定します。
  • Okta:OKTA をID プロバイダーとしてシングルサインオン接続を使用するように設定します。
  • ADFS:ADFS をID プロバイダーとしてシングルサインオン接続を使用するように設定します。
  • PingFederate:PingFederate をID プロバイダーとしてシングルサインオン接続を使用するように設定します。
  • AwsCredentialsFile:認証に資格情報ファイルを使用するために設定します。

CData Cloud

AWSAccessKey

AWS アカウントのアクセスキー。この値には、[AWS セキュリティ認証情報]ページからアクセスできます。

データ型

string

デフォルト値

""

解説

AWS アカウントのアクセスキー。この値には、[AWS セキュリティ認証情報]ページからアクセスできます。

  1. ルートアカウントの資格情報を使用してAWS 管理コンソールにサインインします。
  2. アカウント名または番号を選択し、表示されたメニューで[My Security Credentials]を選択します。
  3. [Continue to Security Credentials]をクリックし、[Access Keys]セクションを展開して、ルートアカウントのアクセスキーを管理または作成します。

CData Cloud

AWSSecretKey

AWS アカウントのシークレットキー。この値には、[AWS セキュリティ認証情報]ページからアクセスできます。

データ型

string

デフォルト値

""

解説

AWS アカウントのシークレットキー。この値には、[AWS セキュリティ認証情報]ページからアクセスできます。

  1. ルートアカウントの資格情報を使用してAWS 管理コンソールにサインインします。
  2. アカウント名または番号を選択し、表示されたメニューで[My Security Credentials]を選択します。
  3. [Continue to Security Credentials]をクリックし、[Access Keys]セクションを展開して、ルートアカウントのアクセスキーを管理または作成します。

CData Cloud

AWSRoleARN

認証時に使用するロールのAmazon リソースネーム。

データ型

string

デフォルト値

""

解説

AWS の外部で認証する場合は、AWS アカウント認証情報ではなく、ロールを認証に使用するのが 一般的です。AWSRoleARN を入力すると、CData Cloud はAWSAccessKey とAWSSecretKey を直接 使用する代わりに、ロールベースの認証を実行します。この認証を実行するためには、AWSAccessKey と AWSSecretKey を指定する必要があります。RoleARN を設定するときは、AWS ルートユーザーの 認証情報を使用できません。AWSAccessKey およびAWSSecretKey はIAM ユーザーのものである必要があります。

CData Cloud

AWSPrincipalARN

AWS アカウントのSAML ID プロバイダーのARN。

データ型

string

デフォルト値

""

解説

AWS アカウントのSAML ID プロバイダーのARN。

CData Cloud

AWSRegion

Amazon Web サービスのホスティングリージョン。

Possible Values

OHIO, NORTHERNVIRGINIA, NORTHERNCALIFORNIA, OREGON, CAPETOWN, HONGKONG, MUMBAI, OSAKA, SEOUL, SINGAPORE, SYDNEY, TOKYO, CENTRAL, BEIJING, NINGXIA, FRANKFURT, IRELAND, LONDON, MILAN, PARIS, STOCKHOLM, BAHRAIN, SAOPAULO, GOVCLOUDEAST, GOVCLOUDWEST

データ型

string

デフォルト値

"NORTHERNVIRGINIA"

解説

Amazon Web サービスのホスティングリージョン。利用可能な値はOHIO、NORTHERNVIRGINIA、NORTHERNCALIFORNIA、OREGON、CAPETOWN、HONGKONG、MUMBAI、OSAKA、SEOUL、SINGAPORE、SYDNEY、TOKYO、CENTRAL、BEIJING、NINGXIA、FRANKFURT、IRELAND、LONDON、MILAN、PARIS、STOCKHOLM、BAHRAIN、SAOPAULO、GOVCLOUDEAST、GOVCLOUDWEST です。

CData Cloud

AWSSessionToken

AWS のセッショントークン。

データ型

string

デフォルト値

""

解説

AWS のセッショントークン。この値はさまざまな方法で取得できます。詳しくは、this link を参照してください。

CData Cloud

AWSExternalId

A unique identifier that might be required when you assume a role in another account.

データ型

string

デフォルト値

""

解説

A unique identifier that might be required when you assume a role in another account.

CData Cloud

MFASerialNumber

MFA デバイスが使用されている場合は、そのシリアル番号。

データ型

string

デフォルト値

""

解説

AWS マネジメントコンソールにアクセスしてユーザーのセキュリティ認証情報を表示することで、IAM ユーザーのデバイスを見つけることができます。 仮想デバイスの場合、これは実際にはAmazon リソースネームです( arn:aws:iam::123456789012:mfa/user など)。

CData Cloud

MFAToken

MFA デバイスから利用できる一時トークン。

データ型

string

デフォルト値

""

解説

MFA が必要な場合、この値はログインのためのテンポラリクレデンシャルを取得するためにMFASerialNumber とともに使用されます。 AWS から入手可能な一時的な認証情報はデフォルトで最長1時間しか持続しません(TemporaryTokenDuration を参照してください)。時間が経過したら、新しい認証情報を取得できるように、接続を 更新して新しいMFA トークンを指定する必要があります。

CData Cloud

TemporaryTokenDuration

一時トークンが持続する時間(秒単位)。

データ型

string

デフォルト値

"3600"

解説

一時トークンは、MFA 認証とロールベース認証の両方で使用されます。一時トークンは、やがてタイムアウトします。 そのときには、新しい一時トークンを取得する必要があります。MFA が使用されていない状況では、これは大したこと ではありません。一時トークンが期限切れになると、CData Cloud は内部的に新しい一時トークンをリクエストします。

ただし、MFA が必要な接続の場合は、新しい一時トークンを取得するために新しいMFAToken を接続で指定 する必要があります。これは、ユーザーによる接続の更新が必要になるため、より煩わしい問題です。指定できる 最大値と最小値は、使用されている接続によって大きく異なります。

ロールベース認証の場合は、最小期間は900秒(15分)で、最大期間は3600秒(1時間)です。 ロールベース認証でMFA が使用されている場合でも、3600秒が依然として最大です。

MFA 認証自体では(IAM ユーザーまたはルートユーザーを使用)、最小値は900秒(15分)、 最大値は129600(36時間)です。

CData Cloud

AWSCognitoRegion

AWS Cognito のホスティングリージョン。

Possible Values

OHIO, NORTHERNVIRGINIA, NORTHERNCALIFORNIA, OREGON, CAPETOWN, HONGKONG, MUMBAI, OSAKA, SEOUL, SINGAPORE, SYDNEY, TOKYO, CENTRAL, BEIJING, NINGXIA, FRANKFURT, IRELAND, LONDON, MILAN, PARIS, STOCKHOLM, BAHRAIN, SAOPAULO, GOVCLOUDEAST, GOVCLOUDWEST

データ型

string

デフォルト値

"NORTHERNVIRGINIA"

解説

AWS Cognito のホスティングリージョン。利用可能な値は次のとおりです。OHIO, NORTHERNVIRGINIA, NORTHERNCALIFORNIA, OREGON, CAPETOWN, HONGKONG, MUMBAI, OSAKA, SEOUL, SINGAPORE, SYDNEY, TOKYO, CENTRAL, BEIJING, NINGXIA, FRANKFURT, IRELAND, LONDON, MILAN, PARIS, STOCKHOLM, BAHRAIN, SAOPAULO, GOVCLOUDEAST, GOVCLOUDWEST

CData Cloud

AWSUserPoolId

ユーザープールのID。

データ型

string

デフォルト値

""

解説

[AWS Cognito]->[Manage User Pools(ユーザープールの管理)]->[select your user pool(ユーザープールを選択)]->[General settings(全般設定)]->[Pool ID(プールのID)]で確認できます。

CData Cloud

AWSUserPoolClientAppId

ユーザープールのアプリクライアントID。

データ型

string

デフォルト値

""

解説

[AWS Cognito]->[Manage Identity Pools(ID プールの管理)]->[select your user pool(ユーザープールを選択)]->[General settings(全般設定)]->[App clients(アプリクライアント)]->[App client ID(アプリクライアントID)]で確認できます。

CData Cloud

AWSUserPoolClientAppSecret

ユーザープールのアプリクライアントシークレット。(オプション)

データ型

string

デフォルト値

""

解説

[AWS Cognito]->[Manage Identity Pools(ID プールの管理)]->[select your user pool(ユーザープールを選択)]->[General settings(全般設定)]->[App clients(アプリクライアント)]->[App client secret(アプリクライアントシークレット)]で確認できます。

CData Cloud

AWSIdentityPoolId

ID プールのID。

データ型

string

デフォルト値

""

解説

[AWS Cognito]->[Manage Identity Pools(ID プールの管理)]->[select your identity pool(ID プールを選択)]->[Edit identity pool(ID プールの編集)]->[Identity Pool(ID プール)]で確認できます。

CData Cloud

ServerSideEncryption

有効にすると、Amazon S3バケットへのファイルアップロードがサーバー側で暗号化されます。

Possible Values

OFF, S3-Managed Keys

データ型

string

デフォルト値

"OFF"

解説

サーバー側の暗号化とは、データを受信するアプリケーションまたはサービスによって、送信先でデータを暗号化することです。Amazon S3は、データセンターのディスクに書き込まれるときにデータをオブジェクトレベルで暗号化し、ユーザーがデータにアクセスするときに復号します。詳しくは、こちらを参照してください。https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/userguide/serv-side-encryption.html

CData Cloud

SSO

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


プロパティ説明
UserSSO 経由でIDP の認証に使用するIDP ユーザー。
PasswordSSO 経由でIDP ユーザーの認証に使用するパスワード。
SSOLoginURLID プロバイダーのログインURL。
SSOPropertiesセミコロンで区切られたID プロバイダーへの接続に必要な追加プロパティ。
SSOExchangeUrlSAML 応答を処理して、Amazon S3 の資格情報と交換するために使用するURL。
CData Cloud

User

SSO 経由でIDP の認証に使用するIDP ユーザー。

データ型

string

デフォルト値

""

解説

このフィールドは、Password とともに、SSO 接続でAmazon S3 サーバーに対して認証をするために使われます。

CData Cloud

Password

SSO 経由でIDP ユーザーの認証に使用するパスワード。

データ型

string

デフォルト値

""

解説

User およびPassword をSSO 接続で一緒に使用してサーバーで認証を行います。

CData Cloud

SSOLoginURL

ID プロバイダーのログインURL。

データ型

string

デフォルト値

""

解説

ID プロバイダーのログインURL。

CData Cloud

SSOProperties

セミコロンで区切られたID プロバイダーへの接続に必要な追加プロパティ。

データ型

string

デフォルト値

""

解説

セミコロンで区切られたID プロバイダーへの接続に必要な追加プロパティ。SSOProperties はAWSRoleARN およびAWSPrincipalARN と一緒に使用します。次のセクションでは、OKTA ID プロバイダーの利用サンプルを示します。

ADFS

AuthScheme をADFS に設定します。次の接続プロパティを設定する必要があります。

  • User:ADFS ユーザー名に設定。
  • Password:ADFS パスワードに設定。
  • SSOLoginURL:SSO プロバイダーが使用するログインURL に設定。
以下は接続文字列の例です。
AuthScheme=ADFS; AWSRegion=Ireland; [email protected]; Password=CH8WerW121235647iCa6; SSOLoginURL='https://adfs.domain.com'; AWSRoleArn=arn:aws:iam::1234:role/ADFS_SSO; AWSPrincipalArn=arn:aws:iam::1234:saml-provider/ADFSProvider;

ADFS 統合

To use the ADFS Integrated flow, specify the SSOLoginURL and leave the username and password empty.

Okta

AuthScheme をOkta に設定します。Okta を介した認証には、次の接続プロパティを使用します。

  • User:Okta ユーザーに設定。
  • Password:Okta パスワードに設定。
  • SSOLoginURL:SSO プロバイダーが使用するログインURL に設定。
Okta を使用して認証するには、次のSSOProperties を使用します。
  • APIToken(オプション):顧客がOkta 組織から作成したAPI Token に設定。Okta クライアントリクエストコンテキストを上書きする、信頼されたアプリケーションまたはプロキシ経由でユーザーを認証する場合に使用してください。
  • MFAType(オプション):MFA フローを設定した場合にのみ設定。現時点では、次のタイプのみをサポートしています:OktaVerify、Email、およびSMS。
  • MFAPassCode(オプション):MFA フローを設定した場合にのみ設定。If this is set to empty or invalid the driver issues a one-time password challenge to your device or email.Once the passcode is received, reopen the connection where the retrieved one-time password value is set to the MFAPassCode connection property.

接続文字列の例:

AuthScheme=Okta; AWSRegion=Ireland; [email protected]; Password=CH8WerW121235647iCa6; SSOLoginURL='https://cdata-us.okta.com/home/amazon_aws/0oa35m8arsAL5f5NrE6NdA356/272'; SSOProperties='ApiToken=01230GGG2ceAnm_tPAf4MhiMELXZ0L0N1pAYrO1VR-hGQSf;'; AWSRoleArn=arn:aws:iam::1234:role/Okta_SSO; AWSPrincipalARN=arn:aws:iam::1234:saml-provider/OktaProvider;

CData Cloud

SSOExchangeUrl

SAML 応答を処理して、Amazon S3 の資格情報と交換するために使用するURL。

データ型

string

デフォルト値

""

解説

CData Cloud はここで指定されたURL を使用してSAML 応答を処理し、Amazon S3 の資格情報を取得します。 取得した資格情報はSSO 接続時の最後の情報であり、Amazon S3 との通信に使用されます。

CData Cloud

SSL

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


プロパティ説明
SSLServerCertTLS/SSL を使用して接続するときに、サーバーが受け入れ可能な証明書。
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

これを指定しない場合は、マシンが信用するすべての証明書が受け入れられます。

すべての証明書の受け入れを示すには、'*'を使用します。セキュリティ上の理由から、これはお勧めできません。

CData Cloud

Firewall

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


プロパティ説明
FirewallTypeプロキシベースのファイアウォールで使われるプロトコル。
FirewallServerプロキシベースのファイアウォールの名前もしくはIP アドレス。
FirewallPortプロキシベースのファイアウォールのTCP ポート。
FirewallUserプロキシベースのファイアウォールに認証するために使うユーザー名。
FirewallPasswordプロキシベースのファイアウォールへの認証に使われるパスワード。
CData Cloud

FirewallType

プロキシベースのファイアウォールで使われるプロトコル。

Possible Values

NONE, TUNNEL, SOCKS4, SOCKS5

データ型

string

デフォルト値

"NONE"

解説

このプロパティは、Cloud がFirewallServer プロキシ経由でトンネルトラフィックを使うためのプロトコルを指定します。デフォルトでは、Cloud はシステムプロキシに接続します。この動作を無効化し次のプロキシタイプのどれかで接続するには、ProxyAutoDetect をfalse に設定します。

タイプ デフォルトポート 説明
TUNNEL 80 これが設定されている場合、Cloud はAmazon S3 への接続を開き、プロキシを経由して通信が行われます。
SOCKS4 1080 これが設定されている場合、Cloud はデータをFirewallServer およびFirewallPort で指定されたSOCS 4 プロキシ経由で送信し、接続リクエストが許容されるかどうかを決定します。
SOCKS5 1080 これが設定されている場合、Cloud はデータをFirewallServer およびFirewallPort で指定されたSOCS 5 プロキシ経由で送信します。プロキシに認証が必要な場合には、FirewallUser およびFirewallPassword をプロキシが認識する認証情報に設定します。

HTTP プロキシへの接続には、ProxyServer およびProxyPort ポートを使ってください。HTTP プロキシへの認証には、ProxyAuthScheme、ProxyUser、およびProxyPassword を使ってください。

CData Cloud

FirewallServer

プロキシベースのファイアウォールの名前もしくはIP アドレス。

データ型

string

デフォルト値

""

解説

ファイアウォールトラバーサルを許容するために設定するIP アドレス、DNS 名、もしくはプロキシホスト名を指定するプロパティです。プロトコルはFirewallType で指定されます。このプロパティとFirewallServer を使って、SOCKS 経由での接続、もしくはトンネリングが可能です。HTTP プロキシへの接続には、ProxyServer を使用します。

Cloud はデフォルトでシステムプロキシを使うので注意してください。他のプロキシを使う場合には、ProxyAutoDetect をfalse に設定してください。

CData Cloud

FirewallPort

プロキシベースのファイアウォールのTCP ポート。

データ型

int

デフォルト値

0

解説

ファイアウォールトラバーサルを許容するために設定するプロキシベースのファイアウォールのTCP ポート。名前もしくはIP アドレスを指定するには、FirewallServer を使います。FirewallType でプロトコルを指定します。

CData Cloud

FirewallUser

プロキシベースのファイアウォールに認証するために使うユーザー名。

データ型

string

デフォルト値

""

解説

FirewallUser およびFirewallPassword プロパティは、FirewallType により指定された認証方式に則り、FirewallServer、およびFirewallPort で指定されたプロキシに対しての認証に使われます。

CData Cloud

FirewallPassword

プロキシベースのファイアウォールへの認証に使われるパスワード。

データ型

string

デフォルト値

""

解説

このプロパティは、FirewallType により指定された認証メソッドに則り、FirewallServer およびFirewallPort で指定されたプロキシに渡されます。

CData Cloud

Proxy

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


プロパティ説明
ProxyAutoDetectこれは、システムプロキシ設定を使用するかどうかを示します。これは他のプロキシ設定よりも優先されるため、カスタムプロキシ設定を使用するにはProxyAutoDetect をFALSE に設定する必要があります。
ProxyServerHTTP トラフィックをルートするためのプロキシのホストネームもしくはIP アドレス。
ProxyPortProxyServer プロキシが起動しているTCP ポート。
ProxyAuthSchemeProxyServer プロキシへの認証で使われる認証タイプ。
ProxyUserProxyServer プロキシへの認証に使われるユーザー名。
ProxyPasswordProxyServer プロキシへの認証に使われるパスワード。
ProxySSLTypeProxyServer プロキシへの接続時に使用するSSL タイプ。
ProxyExceptionsProxyServer 経由での接続が免除される宛先ホスト名またはIP のセミコロン区切りのリスト。
CData Cloud

ProxyAutoDetect

これは、システムプロキシ設定を使用するかどうかを示します。これは他のプロキシ設定よりも優先されるため、カスタムプロキシ設定を使用するにはProxyAutoDetect をFALSE に設定する必要があります。

データ型

bool

デフォルト値

true

解説

これは他のプロキシ設定よりも優先されるため、カスタムプロキシ設定を使用するにはProxyAutoDetect をFALSE に設定する必要があります。

HTTP プロキシへの接続には、ProxyServer を参照してください。SOCKS やトンネリングなどの他のプロキシには、FirewallType を参照してください。

CData Cloud

ProxyServer

HTTP トラフィックをルートするためのプロキシのホストネームもしくはIP アドレス。

データ型

string

デフォルト値

""

解説

HTTP トラフィックをルートするためのプロキシのホストネームもしくはIP アドレス。HTTP プロキシへの認証には、Cloud はHTTP、Windows(NTLM)、もしくはKerberos 認証タイプを使用することができます。

SOCKS プロキシを経由して接続する、もしくは接続をトンネルするには、FirewallType を参照してください。

デフォルトで、Cloud はsystem プロキシを使います。他のプロキシを使う場合には、ProxyAutoDetect をfalse に設定します。

CData Cloud

ProxyPort

ProxyServer プロキシが起動しているTCP ポート。

データ型

int

デフォルト値

80

解説

HTTP トラフィックをリダイレクトするHTTP プロキシが実行されているポート。ProxyServer でHTTP プロキシを指定します。その他のプロキシタイプについては、FirewallType を参照してください。

CData Cloud

ProxyAuthScheme

ProxyServer プロキシへの認証で使われる認証タイプ。

Possible Values

BASIC, DIGEST, NONE, NEGOTIATE, NTLM, PROPRIETARY

データ型

string

デフォルト値

"BASIC"

解説

この値は、ProxyServer およびProxyPort で指定されるHTTP プロキシに認証するために使われる認証タイプを指定します。

Cloud は、デフォルトでsystem proxy settings を使い、追加での設定が不要です。他のプロキシへの接続をする場合には、ProxyServer およびProxyPort に加え、ProxyAutoDetect をfalse に設定します。認証するには、ProxyAuthScheme を設定し、必要な場合にはProxyUser およびProxyPassword を設定します。

認証タイプは、次のどれかになります。

  • BASIC: Cloud はHTTP BASIC 認証を行います。
  • DIGEST: Cloud はHTTP DIGEST 認証を行います。
  • NEGOTIATE: Cloud は認証において有効なプロトコルに応じて、NTLM もしくはKereros トークンを取得します。
  • PROPRIETARY: Cloud はNTLM もしくはKerberos トークンを発行しません。このトークンを、HTTP リクエストのAuthorization ヘッダーに含める必要があります。

SOCKS 5 認証のような他の認証タイプを使用するには、FirewallType を参照してください。

CData Cloud

ProxyUser

ProxyServer プロキシへの認証に使われるユーザー名。

データ型

string

デフォルト値

""

解説

ProxyUser および ProxyPassword オプションは、ProxyServer で指定されたHTTP プロキシに対して接続および認証するために使用されます。

ProxyAuthScheme で使用可能な認証タイプを選択することができます。HTTP 認証を使う場合、これをHTTP プロキシで識別可能なユーザーのユーザー名に設定します。Windows もしくはKerberos 認証を使用する場合、このプロパティを次の形式のどれかでユーザー名に設定します。

user@domain
domain\user

CData Cloud

ProxyPassword

ProxyServer プロキシへの認証に使われるパスワード。

データ型

string

デフォルト値

""

解説

このプロパティは、NTLM(Windows)、Kerberos、もしくはHTTP 認証をサポートするHTTP プロキシサーバーに認証するために使われます。HTTP プロキシを指定するためには、ProxyServer およびProxyPort を設定します。認証タイプを指定するためにはProxyAuthScheme を設定します。

HTTP 認証を使う場合、さらにHTTP プロキシにProxyUser およびProxyPassword を設定します。

NTLM 認証を使う場合、Windows パスワードにProxyUser およびProxyPassword を設定します。Kerberos 認証には、これらを入力する必要があります。

SOCKS 5 認証もしくは、トンネリングは、FirewallType を参照してください。

デフォルトで、Cloud はsystem プロキシを使います。他のプロキシに接続する場合には、これをfalse に設定します。

CData Cloud

ProxySSLType

ProxyServer プロキシへの接続時に使用するSSL タイプ。

Possible Values

AUTO, ALWAYS, NEVER, TUNNEL

データ型

string

デフォルト値

"AUTO"

解説

このプロパティは、ProxyServer で指定されたHTTP プロキシへの接続にSSL を使用するかどうかを決定します。この値は、AUTO、ALWAYS、NEVER、TUNNEL のいずれかです。有効な値は次のとおりです。

AUTOデフォルト設定。URL がHTTPS URL の場合、Cloud は、TUNNEL オプションを使います。URL がHTTP URL の場合、コンポーネントはNEVER オプションを使います。
ALWAYS接続は、常にSSL 有効となります。
NEVER接続は、SSL 有効になりません。
TUNNEL接続は、トンネリングプロキシを経由します。プロキシサーバーがリモートホストへの接続を開き、プロキシを経由して通信が行われます。

CData Cloud

ProxyExceptions

ProxyServer 経由での接続が免除される宛先ホスト名またはIP のセミコロン区切りのリスト。

データ型

string

デフォルト値

""

解説

ProxyServer は、このプロパティで定義されたアドレスを除くすべてのアドレスに使用されます。セミコロンを使用してエントリを区切ります。

Cloud は、追加設定なしにデフォルトでシステムのプロキシ設定を使います。この接続のプロキシ例外を明示的に構成するには、ProxyAutoDetect をfalse に設定して、ProxyServer およびProxyPort を設定する必要があります。認証するには、ProxyAuthScheme を設定し、必要な場合にはProxyUser およびProxyPassword を設定します。

CData Cloud

Logging

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


プロパティ説明
Logfileログファイルの名前と場所を指定するファイルパス。
Verbosityログファイルの記述をどの程度の詳細さで記載するかを決定するverbosity レベル。
LogModulesログファイルに含めるコアモジュール。
MaxLogFileSizeログファイルの最大バイトサイズ(例えば、10MB)を指定する文字列。
MaxLogFileCountログファイルの最大ファイル数を指定する文字列。
CData Cloud

Logfile

ログファイルの名前と場所を指定するファイルパス。

データ型

string

デフォルト値

""

解説

このプロパティを設定すると、認証が実行されたときやクエリが実行されたときなど、さまざまなタスクを実行する際に、Cloud がログファイルを生成します。指定したファイルが存在しない場合は作成されます。

接続文字列およびバージョン情報も記録されますが、機密情報を含む接続プロパティは自動的にマスクされます。

相対ファイルパスが指定された場合、ログファイルの場所は、Location 接続プロパティにあるパスに基づいて解決されます。

ログファイルに記録される内容をより細かく制御するには、Verbosity プロパティを調整してください。

ログ内容はいくつかのモジュールに分類されます。LogModules プロパティを使うことで、個々のモジュールを表示または非表示にすることができます。

新しいログファイルの作成前にログファイル1つの最大サイズを変更する方法については、MaxLogFileSize を参照してください。

生成されるログファイル数に上限を設定したい場合は、MaxLogFileCount を使用してください。

CData Cloud

Verbosity

ログファイルの記述をどの程度の詳細さで記載するかを決定するverbosity レベル。

データ型

string

デフォルト値

"1"

解説

Verbosity レベルは、Cloud がLogfile にどの程度の詳細さで記載するかを決定します。1 から5 までのVerbosity レベルがサポートされています。より詳しい説明は、ログ ページに記載されています。

CData Cloud

LogModules

ログファイルに含めるコアモジュール。

データ型

string

デフォルト値

""

解説

指定された(';' で区切られた)モジュールのみがログファイルに含まれます。デフォルトではすべてのモジュールが含まれます。

概要はログ ページを参照してください。

CData Cloud

MaxLogFileSize

ログファイルの最大バイトサイズ(例えば、10MB)を指定する文字列。

データ型

string

デフォルト値

"100MB"

解説

サイズリミットを超えると、日付と時刻が末尾に追加された新しいログが同じフォルダ内に作成されます。リミットのデフォルトは100 MB です。100 kB より小さい値を設定した場合、100 kB がリミットとなります。

生成されるログファイルの最大数は、MaxLogFileCount で調整できます。

CData Cloud

MaxLogFileCount

ログファイルの最大ファイル数を指定する文字列。

データ型

int

デフォルト値

-1

解説

サイズリミットを超えると、日付と時刻が末尾に追加された新しいログが同じフォルダ内に作成され、最も古いログファイルが削除されます。

サポートされている最小値は2です。0や負の値は、数に制限がないことを示します。

生成されるログファイルの最大サイズは、MaxLogFileSize で調整できます。

CData Cloud

Schema

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


プロパティ説明
Locationテーブル、ビュー、およびストアドプロシージャを定義するスキーマファイルを格納するディレクトリへのパス。
BrowsableSchemasこのプロパティは、使用可能なスキーマのサブセットにレポートされるスキーマを制限します。例えば、BrowsableSchemas=SchemaA,SchemaB,SchemaC です。
Tablesこのプロパティは、使用可能なテーブルのサブセットにレポートされるテーブルを制限します。例えば、Tables=TableA,TableB,TableC です。
Views使用可能なテーブルのサブセットにレポートされるビューを制限します。例えば、Views=ViewA,ViewB,ViewC です。
CData Cloud

Location

テーブル、ビュー、およびストアドプロシージャを定義するスキーマファイルを格納するディレクトリへのパス。

データ型

string

デフォルト値

"%APPDATA%\\CData\\AmazonS3 Data Provider\\Schema"

解説

Cloud のスキーマファイル(テーブルとビューの場合は.rsd ファイル、ストアドプロシージャの場合は.rsb ファイル)を含むディレクトリへのパス。このフォルダの場所は、実行ファイルの場所からの相対パスにすることができます。Location プロパティは、定義をカスタマイズしたり(例えば、カラム名を変更する、カラムを無視するなど)、新しいテーブル、ビュー、またはストアドプロシージャでデータモデルを拡張する場合にのみ必要です。

指定しない場合、デフォルトの場所は"%APPDATA%\\CData\\AmazonS3 Data Provider\\Schema" となり、%APPDATA% はユーザーのコンフィギュレーションディレクトリに設定されます:

CData Cloud

BrowsableSchemas

このプロパティは、使用可能なスキーマのサブセットにレポートされるスキーマを制限します。例えば、BrowsableSchemas=SchemaA,SchemaB,SchemaC です。

データ型

string

デフォルト値

""

解説

スキーマをデータベースからリストすると、負荷がかかる可能性があります。接続文字列でスキーマのリストを提供すると、 パフォーマンスが向上します。

CData Cloud

Tables

このプロパティは、使用可能なテーブルのサブセットにレポートされるテーブルを制限します。例えば、Tables=TableA,TableB,TableC です。

データ型

string

デフォルト値

""

解説

テーブルを複数のデータベースからリストすると、負荷がかかる可能性があります。接続文字列でテーブルのリストを提供すると、Cloud のパフォーマンスが向上します。

このプロパティは、作業したいビューがすでにわかっていて、ビューが多すぎる場合に、ビューを自動的にリストする代わりに使用することもできます。

カンマ区切りのリストで使用したいテーブルを指定します。各テーブルは、角かっこ、二重引用符、またはバッククオートを使用してエスケープされた特殊文字列を含む有効なSQL 識別子である必要があります。 例えば、Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space` です。

複数のスキーマまたはカタログを持つデータソースに接続する場合は、複数のカタログやスキーマに存在するテーブル間の曖昧さを避けるため、最後の例のように、このプロパティにテーブルの完全修飾名を指定する必要があることに注意してください。

CData Cloud

Views

使用可能なテーブルのサブセットにレポートされるビューを制限します。例えば、Views=ViewA,ViewB,ViewC です。

データ型

string

デフォルト値

""

解説

ビューを複数のデータベースからリストすると、負荷がかかる可能性があります。接続文字列でビューのリストを提供すると、Cloud のパフォーマンスが向上します。

このプロパティは、作業したいビューがすでにわかっていて、ビューが多すぎる場合に、ビューを自動的にリストする代わりに使用することもできます。

カンマ区切りのリストで使用したいビューを指定します。各ビューは、角かっこ、二重引用符、またはバッククオートを使用してエスケープされた特殊文字列を含む有効なSQL 識別子である必要があります。 例えば、Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space` です。

複数のスキーマまたはカタログを持つデータソースに接続する場合は、複数のカタログやスキーマに存在するテーブル間の曖昧さを避けるため、最後の例のように、このプロパティにテーブルの完全修飾名を指定する必要があることに注意してください。

CData Cloud

Caching

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


プロパティ説明
AutoCacheSELECT クエリの結果を、 CacheLocation 、または CacheConnection と CacheProvider の両方で指定されたキャッシュデータベースに自動的にキャッシュします。
CacheLocationキャッシュデータベースへのパスとファイル名を指定します。
CacheToleranceAutoCache 使用時のキャッシュ内の失効データに対する許容範囲の秒数。
Offlineオフラインモードを使用して、ライブソースではなくキャッシュからデータを取得します。
CacheMetadataこのプロパティは、テーブルメタデータをファイルストアにキャッシュするかどうかを決定します。
CData Cloud

AutoCache

SELECT クエリの結果を、 CacheLocation 、または CacheConnection と CacheProvider の両方で指定されたキャッシュデータベースに自動的にキャッシュします。

データ型

bool

デフォルト値

false

解説

AutoCache がtrue に設定されていると、Cloud はテーブルデータのキャッシュを選択したデータベースに自動的に保存します。

キャッシュデータベースの設定

AutoCache がtrue の場合、Cloud はシンプルなファイルベースストアにキャッシュします。次のプロパティを使って、場所またはキャッシュを別のデータベースに構成できます。

  • CacheLocation:ファイルストアへのパスを指定します。
  • CacheProvider およびCacheConnection:ドライバーをデータベースと接続文字列に指定します。

関連項目

  • CacheMetadata:このプロパティは、Amazon S3 メタデータから取得したテーブルスキーマを永続化することによって、ネットワークを横断するメタデータの量を減らします。メタデータは、すべての接続で取得する必要はなく、一度取得するだけです。
  • 明示的なデータのキャッシュ:このセクションでは、AutoCache をOffline で使用する例をさらに示します。
  • CACHE ステートメント:CACHE ステートメントを使って、SELECT クエリを永続化し、キャッシュを管理(例えば、スキーマのリフレッシュ)ができます。

CData Cloud

CacheLocation

キャッシュデータベースへのパスとファイル名を指定します。

データ型

string

デフォルト値

"%APPDATA%\\CData\\AmazonS3 Data Provider"

解説

CacheLocation は単純なファイルベースキャッシュです。

指定しない場合、デフォルトの場所は"%APPDATA%\\CData\\AmazonS3 Data Provider" となり、%APPDATA%はユーザーのコンフィギュレーションディレクトリに設定されます:

関連項目

  • AutoCache:後のオフライン使用のために、暗黙的にキャッシュを作成して維持するように設定します。
  • CacheMetadata:Amazon S3 カタログをCacheLocation に永続化するように設定します。

CData Cloud

CacheTolerance

AutoCache 使用時のキャッシュ内の失効データに対する許容範囲の秒数。

データ型

int

デフォルト値

600

解説

キャッシュ内の失効データに対する許容範囲の秒数。これは、AutoCache が使用されている場合のみ有効です。Cloud は、許容インターバルが過ぎると、新しいレコードがないかデータソースをチェックしに行きます。それ以外は、キャッシュから直接データを返します。

CData Cloud

Offline

オフラインモードを使用して、ライブソースではなくキャッシュからデータを取得します。

データ型

bool

デフォルト値

false

解説

Offline がtrue に設定されている場合、すべてのクエリは、ライブデータソースではなくキャッシュに対して実行されます。このモードでは、INSERT、UPDATE、DELETE、CACHE などのクエリは許可されません。

CData Cloud

CacheMetadata

このプロパティは、テーブルメタデータをファイルストアにキャッシュするかどうかを決定します。

データ型

bool

デフォルト値

false

解説

このプロパティを設定してクエリを実行すると、Amazon S3 カタログのテーブルメタデータが設定されている場合にはCacheLocation で指定されたファイルストアに、設定されていない場合にはホームディレクトリにキャッシュされます。テーブルのメタデータの取得は、テーブルがはじめてクエリされた際に一度だけ行われます。

CacheMetadata を使用するタイミング

Cloud は、はじめてテーブルやビューを発見したときから2時間の間、メタデータをインメモリに自動的に保管します。そのため、CacheMetadata は一般的には必要ありません。CacheMetadata は、大量のメタデータを扱う場合でメタデータオペレーションのコストが高い場合や、短い接続を大量に行う場合などに役立ちます。

CacheMetadata を使用しないタイミング

  • 変化しやすいメタデータを扱う場合:テーブルのメタデータは、はじめにテーブルへの接続がなされた時に一度しか取得されません。それ以降の、新規、変更、削除されたカラムを取得するには、メタデータキャッシュを削除してリビルドする必要があります。よって、メタデータが頻繁に変更される場合には、インメモリキャッシュを使う方が便利です。
  • データベースにキャッシュする場合:CacheMetadata はCacheLocation でのみ使用可能です。CacheProvider およびCacheConnection プロパティで他のデータベースへのキャッシュが可能です。黙示的なキャッシュにはAutoCache を使ってください。もしくは、 CACHE ステートメント で明示的なキャッシュが可能です。

CData Cloud

Miscellaneous

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


プロパティ説明
CreateFoldersOnDownloadAutomatically create the destination folder during execution of DownloadObjects Stored Procedure.
EncodeFilenameDetermines if the local file path in DownloadObjects Stored Procedure should be encoded.
MaxRowsクエリで集計またはグループ化を使用しない場合に返される行数を制限します。これにより、設計時にパフォーマンスの問題を回避できます。
MaxThreads同時リクエスト数を指定します。
Otherこれらの隠しプロパティは特定のユースケースでのみ使用されます。
PseudoColumnsこのプロパティは、テーブルのカラムとして疑似カラムが含まれているかどうかを示します。
RTKライセンス供与で使用されるランタイムキー。
Timeoutタイムアウトエラーがスローされ、処理をキャンセルするまでの秒数。
UserDefinedViewsA filepath pointing to the JSON configuration file containing your custom views.
CData Cloud

CreateFoldersOnDownload

Automatically create the destination folder during execution of DownloadObjects Stored Procedure.

データ型

bool

デフォルト値

false

解説

This connection property will work only if EncodeFilename is set to false. If CreateFoldersOnDownload is set to true it will automatically create the folder in which the file is going to be downloaded.

CData Cloud

EncodeFilename

Determines if the local file path in DownloadObjects Stored Procedure should be encoded.

データ型

bool

デフォルト値

true

解説

Determines if the local file path in DownloadObjects Stored Procedure should be encoded. Ex.
In the following query:

EXECUTE DownloadObjects 
Object='SBatch100k_ORDERS_cdata_replicate_temporary_table/20201106023735184_0.csv', 
Bucket='actiantest', 
LocalFolderPath='C:\Users\User\Desktop\amazons3test'
The final destination of the file will be C:/Users/User/Desktop/amazons3test/SBatch100k_ORDERS_cdata_replicate_temporary_table%2F20201106023735184_0.csv if EncodeFilename=true and C:/Users/User/Desktop/amazons3test/SBatch100k_ORDERS_cdata_replicate_temporary_table/20201106023735184_0.csv if EncodeFilename=false. In addition you can use CreateFoldersOnDownload connection property if and only if EncodeFilename=false. If CreateFoldersOnDownload is set to true it will automatically create the folder in which the file is going to be downloaded.

CData Cloud

MaxRows

クエリで集計またはグループ化を使用しない場合に返される行数を制限します。これにより、設計時にパフォーマンスの問題を回避できます。

データ型

int

デフォルト値

-1

解説

クエリで集計またはグループ化を使用しない場合に返される行数を制限します。これにより、設計時にパフォーマンスの問題を回避できます。

CData Cloud

MaxThreads

同時リクエスト数を指定します。

データ型

string

デフォルト値

"5"

解説

このプロパティを使用すると、複数のリクエストを同時に発行することができパフォーマンスが向上します。

CData Cloud

Other

これらの隠しプロパティは特定のユースケースでのみ使用されます。

データ型

string

デフォルト値

""

解説

以下にリストされているプロパティは、特定のユースケースで使用可能です。通常のドライバーのユースケースおよび機能では、これらのプロパティは必要ありません。

複数のプロパティをセミコロン区切りリストで指定します。

統合およびフォーマット

DefaultColumnSizeデータソースがメタデータにカラムの長さを提供しない場合に、文字列フィールドのデフォルトの長さを設定します。デフォルト値は2000です。
ConvertDateTimeToGMT日時の値を、マシンのローカルタイムではなくGMT グリニッジ標準時に変換するかどうかを決定します。
RecordToFile=filename基底のソケットデータ転送を指定のファイルに記録します。

CData Cloud

PseudoColumns

このプロパティは、テーブルのカラムとして疑似カラムが含まれているかどうかを示します。

データ型

string

デフォルト値

""

解説

Entity Framework ではテーブルカラムでない疑似カラムに値を設定できないため、この設定はEntity Framework で特に便利です。この接続設定の値は、"Table1=Column1, Table1=Column2, Table2=Column3" の形式です。"*=*" のように"*" 文字を使用して、すべてのテーブルとすべてのカラムを含めることができます。

CData Cloud

RTK

ライセンス供与で使用されるランタイムキー。

データ型

string

デフォルト値

""

解説

RTK プロパティは、ビルドにライセンスを供与するために使用されます。

CData Cloud

Timeout

タイムアウトエラーがスローされ、処理をキャンセルするまでの秒数。

データ型

int

デフォルト値

60

解説

Timeout が0に設定されている場合は、操作がタイムアウトしません。処理が正常に完了するか、エラー状態になるまで実行されます。

Timeout の有効期限が切れても処理が完了していない場合は、Cloud は例外をスローします。

CData Cloud

UserDefinedViews

A filepath pointing to the JSON configuration file containing your custom views.

データ型

string

デフォルト値

""

解説

User Defined Views are defined in a JSON-formatted configuration file called UserDefinedViews.json. The Cloud automatically detects the views specified in this file.

You can also have multiple view definitions and control them using the UserDefinedViews connection property. When you use this property, only the specified views are seen by the Cloud.

This User Defined View configuration file is formatted as follows:

  • Each root element defines the name of a view.
  • Each root element contains a child element, called query, which contains the custom SQL query for the view.

For example:

{
	"MyView": {
		"query": "SELECT * FROM Buckets WHERE MyColumn = 'value'"
	},
	"MyView2": {
		"query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)"
	}
}
Use the UserDefinedViews connection property to specify the location of your JSON configuration file. For example:
"UserDefinedViews", "C:\\Users\\yourusername\\Desktop\\tmp\\UserDefinedViews.json"

Copyright (c) 2022 CData Software, Inc. - All rights reserved.
Build 22.0.8322