> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kazzle.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 資料庫

> 為您的應用程式提供專用 Postgres 實例。

每個資料庫都是一個專用的 Postgres 實例，隔離、可縮放至零，支援連線池和直接連線。告訴 AI 建立一個，它會處理設定和認證。

## 建立資料庫

告訴 AI 應用程式需要什麼。它應該先列出現有資料庫，並在存在合適的活躍資料庫時重複使用。只有當您要求隔離或沒有現有資料庫符合需求時，它才會建立新的 Postgres 實例。

## 認證

資料庫認證透過 [vault](/work/vault) 管理。

* **檢視認證** - 傳回資料庫的目前連線 URI。
* **重新產生認證** - 重設資料庫密碼並建立新的 vault 密鑰。在認證遺失、洩露或需要輪換時使用。舊認證會立即停止運作。

### 在應用程式中使用認證

對於生成的應用程式，AI 會使用 `db` 工具將資料庫認證連接到流程元件。應用程式程式碼讀取一般環境變數，例如 `DATABASE_URL` 和 `DIRECT_DATABASE_URL`。

對於手動本機命令，透過 Kazzle CLI 使用正確的集合和環境執行：

```json theme={"theme":"material-theme-darker"}
{
  "scripts": {
    "dev": "kazzle run --collection=my-saas --env=dev -- bun run server.ts"
  }
}
```

不要將資料庫 URL 放在前端程式碼或 `VITE_*` 變數中。

## 遷移

結構描述變更應放在應用程式儲存庫中的 SQL 檔案中（例如 `migrations/001_create_todos.sql`）。Kazzle 可以在應用程式的部署流程中執行這些遷移。如果啟用了即時同步，AI 也會更新相關的同步設定。

## 啟用即時同步

告訴 AI 在資料庫上啟用同步。在連接即時應用程式之前，它應該等待資料庫顯示 `sync: ready`。請參閱 [即時同步](/apps/sync) 了解其運作方式。

## 刪除資料庫

告訴 AI 刪除資料庫。Kazzle 會先將其標記為已刪除，資料庫可以在永久清理執行前還原。

## 範例：從頭開始設定資料庫

1. "建立一個名為 my-app-db 的資料庫"
2. AI 重複使用合適的資料庫或設定 Postgres 並將認證儲存在 vault 中
3. "建立一個 todos 表，包含 id、text、done 和 created\_at"
4. AI 執行 SQL
5. "將其連接到我的應用程式" - AI 將資料庫連接到應用程式的流程元件

對於具有離線支援的即時應用程式，AI 也會開啟同步並設定用戶端結構描述。請參閱 [建立即時應用程式](/apps/build-and-publish) 了解完整流程。
