# SET、DEL 與 INCR

本頁說明 ToriiDB 寫入、刪除與遞增鍵的指令，以及尾端選項如何解析。

## SET

```text
SET <key> <value> [NX|XX] [seconds] [VECTOR]
```

選項依下列順序從結尾剝除，且只在剩餘至少兩個 token 時才判斷：

1. `VECTOR`（不分大小寫）
2. 正整數 → 過期時間 `now + seconds`
3. `NX` 或 `XX`

因此 `SET version 2 3` 會儲存 `"2"` 並設定 3 秒 TTL，而 `SET n 5` 儲存 `5`。

| 失敗 | 回應 |
|---|---|
| 對已存在鍵用 `NX`、對不存在鍵用 `XX`、欄位寫入錯誤 | `(nil)` |
| 帶點的鍵搭配 `VECTOR` | `error: VECTOR not supported on field-level SET` |
| `VECTOR` 錯誤（無 embedder、空白文字） | `error: <message>` |

## DEL

```text
DEL <key> [key2] ...
```

只有一個帶點參數時刪除該 JSON 欄位，回傳 `OK` 或 `(nil)`。否則刪除頂層鍵並回傳 `(integer) <removed>`。

## INCR

```text
INCR <key> [delta]
```

`delta` 預設 `1`，可為小數；非數字回傳 `error: delta must be a number`。目標必須是既有的 `int`/`float` 鍵或數值 JSON 欄位，否則回傳 `(nil)`。

## 相關頁面

- [值型別](/zh/core-concepts-value-types)
- [寫入 JSON 欄位](/zh/json-documents-writes)
- [附加向量](/zh/vector-search)
