SQL Server - Replicateアクション

このページは機械翻訳により提供されています。翻訳内容と英語版に相違がある場合は、英語版が優先されます。

このアクションは、SQL Serverインスタンス内の選択したテーブルを更新します。 リストデータピルを入力として受け取り、それらを行として挿入または更新します。

Workatoはまず、入力データとSQL Serverテーブルのschemaを検出して比較します。 一致しない場合、このアクションはSQL Serverテーブルに新しい列を作成します。 これにより、入力schemaに更新があった場合でも、入力のすべてのデータがSQL Serverで自動的に同期されます。

入力

入力説明
テーブル名完全なテーブル名を入力して、行を挿入するテーブルを選択します。 SQL Serverでは大文字と小文字は区別されません。
一意キーこれらのunique keysの値を使用して行を照合します。 テーブル内に既存の行が見つかった場合、その行は更新されます。 それ以外の場合は、行が挿入されます。
リストデータピルを入力として使用します。
カラムのフラット化入力データがobjectとして書式設定されている場合、これを使用してobjectを個々のkey-valueペアにflattenします。 詳細はこちら
除外するカラムこのレプリケーションから除外する列をリストデータピルから選択します。 除外された列はテーブルに追加されません。

出力

出力説明
新しいテーブルが作成された指定されたテーブル名が存在せず、ジョブで作成された場合はtrue。 それ以外の場合はfalse
既存のテーブルが変更された新しい列が検出され、テーブルで追加/変更された場合はtrue。 それ以外の場合はfalse
アップサートされた行数テーブル内で挿入/更新された行数。

flattenを使用するタイミング

オブジェクトとしてフォーマットされたデータがある場合、ネストされたデータ(たとえば、JSONオブジェクト内でネストされたデータ)に直接アクセスできないことがあります。

このトグルを使用してオブジェクトをフラット化し、個別のキー値ペアを一意のカラムとして扱います。 このアクションでは、ネストされたデータの1階層のみをflattenします。

データソースの例を次に示します。

json
{
  "ID": 1,
  "NAME": "John Doe",
  "HANDLES": {
    "GITHUB": "johndoe",
    "SLACK": "john"
  }
}

フラット化されていない行は次のようになります。

IDNAMEHANDLES
1John Doe{"github": "johndoe", "slack": "john"}

フラット化された行は次のようになります。

IDNAMEHANDLES.GITHUBHANDLES.SLACK
1John Doejohndoejohn

Workatoスキーママッパー

各データソース(API、データベース、ファイル)には、それぞれ独自のスキーマがあります。 一貫性を維持するため、このアクションはソースの各データ型をSQL Serverテーブルschemaにマッピングします。 このマッピングは、SQL Serverテーブルの作成/更新前に実行されます。

入力データは、以下に定義されたマッピングに基づいてSQL Serverデータ型に変換されます。

WorkatoタイプSQL Server型
stringnvarchar(max)
integerbigint
numberfloat(53)
booleanbit
objectnvarchar(max)
date
date_time
timestamp
datetime2
Workatoは、コネクション設定で定義されたタイムゾーンを使用するか、デフォルトのSQL Serverユーザーアカウントのタイムゾーンを使用します。

Last updated: