開発者向け機能:サーバスクリプト:items.Upsert
## 概要
指定したサイトでキー項目に該当するレコードが存在する場合は更新し、存在しない場合は新規作成します。
## 構文
```
items.Upsert(siteId, json)
```
## パラメータ
|パラメータ|型|必須|説明|
|:----------|:----------|:---:|:---------------------------|
|siteId|object|○|サイトIDを指定|
|json|string|○|JSON文字列を指定|
#### 指定するキー項目について
指定したキー項目をもとにAPIによるレコード作成・更新(upsert)を行います。キー項目の指定は以下のパラメータで指定します。
|プロパティ名|データ型|説明|
|:--|:--|:--|
|Keys|配列(文字列)|キーとなる項目を指定。複数の項目を指定可能です。|
## 戻り値
レコードを更新または、新規作成ができた場合は true、できなかった場合は false を返却します。
## 使用例
下記の例では、キー項目を分類Aにして、サイトID 123 のテーブルに該当するレコード(分類Aが"Ubuntu")が存在する場合は更新し、存在しない場合は新規作成します。レコードの更新または、新規作成する際の情報は以下の通りです。
・タイトル:プリザンターのインストールについて
・状況:実施中(200)
・分類A:Ubuntu
・分類B:PostgreSQL
##### JavaScript
```
let data = {
Keys: ["ClassA"],
Title: "プリザンターのインストールについて",
Status: 200,
ClassHash: {
ClassA: "Ubuntu",
ClassB: "PostgreSQL"
}
};
items.Upsert(123, JSON.stringify(data));
```
## 関連情報
・[テーブルの管理:サーバスクリプト](/manual/table-management-server-script)
・[itemsオブジェクト](/manual/server-script-items)
・[開発者向け機能:API:テーブル操作:レコード作成・更新](/manual/api-record-upsert)