#!/bin/bash
# Restore selektif: hanya tabel produk yang diambil dari archive.
psql -X -d postgres -v ON_ERROR_STOP=1 \
  -c "DROP DATABASE IF EXISTS selektif_latihan WITH (FORCE)" \
  -c "CREATE DATABASE selektif_latihan" > /dev/null

pg_restore -d selektif_latihan --table produk backup_latihan.dump

psql -X -d selektif_latihan -c "SELECT count(*) AS baris_produk FROM produk"
# Tabel lain tidak ikut ...
psql -X -d selektif_latihan -c "SELECT to_regclass('public.pesanan') IS NULL AS pesanan_tidak_ada"
# ... dan primary key produk juga tidak: --table mencocokkan nama objek saja.
psql -X -d selektif_latihan -c "SELECT to_regclass('public.produk_pkey') IS NULL AS pkey_tidak_ada"

# Resep yang membawa constraint: pulihkan skema penuh dulu ...
psql -X -d postgres -v ON_ERROR_STOP=1 \
  -c "DROP DATABASE IF EXISTS selektif_latihan WITH (FORCE)" \
  -c "CREATE DATABASE selektif_latihan" > /dev/null
pg_restore --schema-only -d selektif_latihan backup_latihan.dump
# ... lalu isikan data hanya untuk tabel yang diinginkan.
pg_restore --data-only -d selektif_latihan --table produk backup_latihan.dump

psql -X -d selektif_latihan -c "SELECT to_regclass('public.produk_pkey') IS NOT NULL AS pkey_ada,
                                      (SELECT count(*) FROM produk) AS baris_produk,
                                      (SELECT count(*) FROM pesanan) AS baris_pesanan"
