#!/bin/bash
# --schema-only: struktur lengkap tanpa satu baris data pun.
psql -X -d postgres -v ON_ERROR_STOP=1 \
  -c "DROP DATABASE IF EXISTS variasi_latihan WITH (FORCE)" \
  -c "CREATE DATABASE variasi_latihan" > /dev/null
pg_restore --schema-only -d variasi_latihan backup_latihan.dump
psql -X -d variasi_latihan -c "SELECT to_regclass('public.pesanan') IS NOT NULL AS tabel_ada,
                                      (SELECT count(*) FROM pesanan) AS jumlah_baris"

# --clean --if-exists: pulihkan menimpa isi lama tanpa error duplikat.
psql -X -d variasi_latihan -v ON_ERROR_STOP=1 \
  -c "INSERT INTO pelanggan VALUES (9, 'Pelanggan Baru', 'baru@example.com')" > /dev/null
pg_restore --clean --if-exists -d variasi_latihan backup_latihan.dump
psql -X -d variasi_latihan -c "SELECT count(*) AS baris_setelah_ditimpa FROM pelanggan"

# --jobs N: beberapa tabel dipulihkan sekaligus secara paralel.
psql -X -d postgres -v ON_ERROR_STOP=1 \
  -c "DROP DATABASE IF EXISTS paralel_latihan WITH (FORCE)" \
  -c "CREATE DATABASE paralel_latihan" > /dev/null
pg_restore -j 2 -d paralel_latihan backup_latihan.dump
psql -X -d paralel_latihan -c "SELECT (SELECT count(*) FROM produk) AS produk,
                                      (SELECT count(*) FROM pelanggan) AS pelanggan,
                                      (SELECT count(*) FROM pesanan) AS pesanan"
