---
title: Webhook JDBCコネクタ構成ガイド
description: このWebhookコネクタをJDBC互換データベースに接続して、イベントまたは訪問データを直接テーブルに書き込むことができます。全JSONペイロードを保存するか、個々の属性を特定の列にマッピングすることが可能です。
url: https://docs.tealium.com/ja/server-side-connectors/webhook-jdbc/
---

<blockquote>
HTTP APIエンドポイントにデータを送信するためのWebhookを使用する方法については、[Webhookコネクタについて](https://docs.tealium.com/about-webhook-connectors/)を参照してください。
</blockquote>


このコネクタは以下のデータベースと互換性があります：

* Amazon Redshift
* MariaDB
* MySQL
* PostgreSQL
* SQL Server

## バッチ制限

このコネクタはバッチリクエストを使用して、ベンダーへの大量データ転送をサポートします。リクエストは以下のいずれかの閾値に達するまでキューに入れられます：

* 最大リクエスト数：1,000
* 最古のリクエストからの最大時間：60分
* リクエストの最大サイズ：100 MB

## 構成

コネクタマーケットプレイスにアクセスして新しいコネクタを追加します。コネクタを追加する一般的な手順については、[コネクタについて](https://docs.tealium.com/about-connectors/)を参照してください。

コネクタを追加した後、以下の構成を構成します：

* **ユーザー名**：Tealiumからデータベースにログインするためのユーザー名。セキュリティ上の理由から、このユーザーはこれらの[IPアドレス](https://docs.tealium.com/ip-allow-list/)からのみ接続を許可してください。
* **パスワード**：提供されたユーザー名のパスワード。
* **JDBC URL**：接続を確立するための完全修飾JDBC URL（例：`jdbc:postgresql://host:5432/dbname?p1=a&p2=b`）。
* **追加プロパティ**：接続を確立する際にプロパティとして渡すカンマ区切りのペアのセット。例えば、`prop1=a,prop2=b`は接続に次の調整を行います：

    ```java
    props.setProperty("prop1", "a");
    props.setProperty("prop2", "b");
    Connection conn = DriverManager.getConnection(url, props);
    ```

### 列データ型

属性をテーブルの列にマッピングするのを容易にするために、列はそのデータ型を名前に追加して表示されます。例えば、`customer_id`という名前の列が`VARCHAR`型の場合、マッピングリストには`customer_id//VARCHAR`と表示されます。

### バッチ構成

バッチ処理をサポートするすべてのアクションは、以下のパラメータをサポートします：

| **パラメータ** | **説明** |
| --- | --- |
| バッチの存続時間 | バッチアクションが送信される頻度を指定するための存続時間（`TTL`）を構成します。値は`1`から`60`分の間で入力してください。デフォルト値は`10`分です。 |
| 最大クエリサイズ | クエリの最大サイズをメガバイト単位で構成します。デフォルト値は`1`です。最大値は`100`です。 |

## アクション

| アクション名 | AudienceStream | EventStream |
| --- | :---: | :---: |
| すべてのイベントデータを送信 | ✗ | ✓ |
| カスタムイベントデータを送信 | ✗ | ✓ |
| すべてのログイベントを送信 | ✗ | ✓ |
| ログイベントを送信 | ✗ | ✓ |
| すべての訪問データを送信 | ✓ | ✗ |
| カスタム訪問データを送信 | ✓ | ✗ |
| カスタムクエリを実行 | ✓ | ✓ |

### すべてのイベントデータを送信

このアクションを使用して、すべてのイベントJSONオブジェクトを単一のテーブル列に送信します。

詳細については、を参照してください。

#### パラメータ

| **パラメータ** | **説明** |
| --- | --- |
| スキーマ | 接続したいスキーマ名。 |
| テーブル | 接続したいテーブル名。 |
| ペイロード | JSONデータオブジェクトを保存する列を選択します。 |
| タイムスタンプ | タイムスタンプを記録する列を選択します。 |
| タイムスタンプ属性 | タイムスタンプを異なる形式で送信するために割り当てる属性を選択します。属性が割り当てられて空の値を生成した場合、コネクタは現在のタイムスタンプを送信します。 |
| 属性名を印刷 | 属性名が更新された場合、ペイロード内の名前が更新を反映します。 |

### カスタムイベントデータを送信

このアクションを使用して、特定のイベント属性を特定のテーブル列に送信します。

#### パラメータ

| **パラメータ** | **説明** |
| --- | --- |
| スキーマ | 接続したいスキーマ名。 |
| テーブル | 接続したいテーブル名。 |
| アップサート | 同じキーを持つレコードが既に存在する場合にデータを更新するために選択します。データベースで更新操作を実行するには、属性を主キー列にマッピングする必要があります。|

### すべてのログイベントを送信

詳細については、[connector-error-logging](https://docs.tealium.com/connector-error-logging/)を参照してください。

#### パラメータ

| **パラメータ** | **説明** |
| --- | --- |
| スキーマ | 接続したいスキーマ名。 |
| テーブル | 接続したいテーブル名。 |
| ペイロード | JSONデータオブジェクトを保存する列を選択します。 |
| タイムスタンプ | タイムスタンプを記録する列を選択します。 |
| タイムスタンプ属性 | タイムスタンプを異なる形式で送信するために割り当てる属性。属性が割り当てられて空の値を生成した場合、コネクタは現在のタイムスタンプを送信します。 |

### ログイベントを送信

詳細については、[connector-error-logging](https://docs.tealium.com/connector-error-logging/)を参照してください。

#### パラメータ

| **パラメータ** | **説明** |
| --- | --- |
| スキーマ | 接続したいスキーマ名。 |
| テーブル | 接続したいテーブル名。 |

#### ログイベントリソース属性

これらのフィールドは、テレメトリが記録されるエンティティに関する情報をキャプチャします。

#### ログイベントHTTP属性

これらのフィールドは、ログシステム内のHTTPリクエストとレスポンスを記録します。

HTTP配列全体を単一の列にマッピングする場合は、`http`属性をマッピングします。ターゲット列が`VARIANT`型の場合は、生の配列が送信されます。それ以外の場合は、文字列に変換されます。

#### ログイベント結果属性

これらのフィールドは、操作の結果を記録し、成功したか、エラーが発生したかを詳述します。

#### ログイベントその他の属性

これらのフィールドは、ログされたイベントに関する追加のメタデータを提供します。

### すべての訪問データを送信

このアクションを使用して、すべての訪問JSONオブジェクトを単一のテーブル列に送信します。

詳細については、を参照してください。

#### パラメータ

| **パラメータ** | **説明** |
| --- | --- |
| スキーマ | 接続したいスキーマ名。 |
| テーブル | 接続したいテーブル名。 |
| ペイロード | JSONデータオブジェクトを保存する列を選択します。 |
| タイムスタンプ | タイムスタンプを記録する列を選択します。 |
| タイムスタンプ属性 | タイムスタンプを異なる形式で送信するために割り当てる属性を選択します。属性が割り当てられて空の値を生成した場合、コネクタは現在のタイムスタンプを送信します。 |
| 訪問データに現在の訪問データを含める | 現在の訪問データを訪問データに含めるために選択します。これにはイベント訪問データが含まれますが、**現在の訪問データを除外**が選択されている場合は除外されます。 |
| 現在の訪問イベントデータを除外 | 現在の訪問データからイベントデータを除外するために選択します。 |
| 属性名を印刷 | 属性名が更新された場合、ペイロード内の名前が更新を反映します。 |

### カスタム訪問データを送信

このアクションを使用して、特定の訪問属性を特定のテーブル列に送信します。

#### パラメータ

| **パラメータ** | **説明** |
| --- | --- |
| スキーマ | 接続したいスキーマ名。 |
| テーブル | 接続したいテーブル名。 |
| アップサート | 同じキーを持つレコードが既に存在する場合にデータを更新するために選択します。データベースで更新操作を実行するには、属性を主キー列にマッピングする必要があります。|


### カスタムクエリの実行

このアクションを使用して、カスタムSQLステートメントを実行します。

`INSERT`、`UPDATE`、`MERGE` ステートメントのみが許可されていますが、`SELECT` サブクエリを含むことができます。同じクエリ内に複数の `INSERT`、`UPDATE`、`MERGE` ステートメントを含めるとエラーが発生します。

この機能を使用するには、属性を名前付きプレースホルダーにマッピングし、SQL内で `:MY_PLACEHOLDER` 形式を使用して参照します。例えば、boolean属性を `:my_bool_param` という名前のプレースホルダーにマッピングした場合、その値をマッピングされた属性の値で置き換えたいクエリで `:my_bool_param` を参照します。

例:

```sql
-- 例
INSERT INTO redshift_table
(col1, col2) VALUES (:col1Value, :col2Value)

-- 例
UPDATE redshift_table
SET col1 = :col1Value, col2 = :col2Value
WHERE col3 = :col3Value

-- 例
UPDATE redshift_table
SET col2 = (
  SELECT new_col2 FROM source_table WHERE source_table.col1 = redshift_table.col1
)
WHERE EXISTS (
  SELECT 1 FROM source_table WHERE source_table.col1 LIKE :col1Value
);
```

#### パラメータ

| **パラメータ** | **説明** |
| --- | --- |
| スキーマ | 接続するスキーマ名。 |
| クエリパラメータ | クエリ内で置き換えるプレースホルダーにパラメータをマッピングします。パラメータは `:ParameterName` 形式を使用する必要があります。少なくとも1つのパラメータをマッピングする必要があります。 |
| クエリ | `SQL` 属性に渡す生のステートメント。 |