> ## 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.

# Basis Data

> Instance Postgres khusus untuk aplikasi Anda.

Setiap basis data adalah instance Postgres khusus, terisolasi, dapat diskalakan ke nol, dengan koneksi terpooling dan langsung. Minta AI untuk membuat satu dan AI akan menangani penyiapan serta kredensial.

## Membuat basis data

Beritahu AI apa yang dibutuhkan aplikasi Anda. AI harus mencantumkan basis data yang ada terlebih dahulu dan menggunakan kembali basis data aktif yang sesuai jika ada. AI hanya membuat instance Postgres baru ketika Anda meminta isolasi atau tidak ada basis data yang sesuai.

## Kredensial

Kredensial basis data dikelola melalui [vault](/work/vault).

* **Lihat kredensial** - menampilkan URI koneksi saat ini untuk basis data.
* **Buat ulang kredensial** - mengatur ulang kata sandi basis data dan membuat rahasia vault baru. Gunakan ketika kredensial hilang, dikompromikan, atau perlu dirotasi. Kredensial lama berhenti bekerja segera.

### Menggunakan kredensial dalam aplikasi

Untuk aplikasi yang dihasilkan, AI menghubungkan kredensial basis data ke komponen proses dengan alat `db`. Kode aplikasi membaca variabel env normal seperti `DATABASE_URL` dan `DIRECT_DATABASE_URL`.

Untuk perintah lokal manual, jalankan melalui CLI Kazzle dengan koleksi dan lingkungan yang tepat:

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

Jangan masukkan URL basis data dalam kode frontend atau variabel `VITE_*`.

## Migrasi

Perubahan skema masuk dalam file SQL di repo aplikasi (misalnya `migrations/001_create_todos.sql`). Kazzle dapat menjalankan migrasi tersebut sebagai bagian dari alur deploy aplikasi Anda. Jika sinkronisasi realtime diaktifkan, AI juga memperbarui penyiapan sinkronisasi terkait.

## Mengaktifkan sinkronisasi realtime

Minta AI untuk mengaktifkan sinkronisasi pada basis data. AI harus menunggu hingga basis data menampilkan `sync: ready` sebelum menghubungkan aplikasi realtime. Lihat [Sinkronisasi realtime](/apps/sync) untuk cara kerjanya.

## Menghapus basis data

Minta AI untuk menghapus basis data. Kazzle menandainya sebagai dihapus terlebih dahulu, dan basis data dapat dipulihkan sebelum pembersihan permanen berjalan.

## Contoh: menyiapkan basis data dari awal

1. "Buat basis data bernama my-app-db"
2. AI menggunakan kembali basis data yang sesuai atau menyiapkan Postgres dan menyimpan kredensial di vault
3. "Buat tabel todos dengan id, text, done, dan created\_at"
4. AI menjalankan SQL
5. "Hubungkan ke aplikasi saya" - AI menghubungkan basis data ke komponen proses aplikasi Anda

Untuk aplikasi realtime dengan dukungan offline, AI juga mengaktifkan sinkronisasi dan menyiapkan skema sisi klien. Lihat [membangun aplikasi realtime](/apps/build-and-publish) untuk alur lengkapnya.
