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"
}
}フラット化されていない行は次のようになります。
| ID | NAME | HANDLES |
|---|---|---|
| 1 | John Doe | {"github": "johndoe", "slack": "john"} |
フラット化された行は次のようになります。
| ID | NAME | HANDLES.GITHUB | HANDLES.SLACK |
|---|---|---|---|
| 1 | John Doe | johndoe | john |
Workatoスキーママッパー
各データソース(API、データベース、ファイル)には、それぞれ独自のスキーマがあります。 一貫性を維持するため、このアクションはソースの各データ型をSQL Serverテーブルschemaにマッピングします。 このマッピングは、SQL Serverテーブルの作成/更新前に実行されます。
入力データは、以下に定義されたマッピングに基づいてSQL Serverデータ型に変換されます。
| Workatoタイプ | SQL Server型 |
|---|---|
| string | nvarchar(max) |
| integer | bigint |
| number | float(53) |
| boolean | bit |
| object | nvarchar(max) |
| date date_time timestamp | datetime2 Workatoは、コネクション設定で定義されたタイムゾーンを使用するか、デフォルトのSQL Serverユーザーアカウントのタイムゾーンを使用します。 |
Last updated: