Koneksi PostgreSQL
Selekta terhubung ke PostgreSQL dengan driver native bawaan di port 5432 secara default, memakai autentikasi password lewat TLS kalau server menawarkannya. Setiap koneksi membuka satu database, menampilkan schema-nya di navigator, dan mendukung Explain, Explain Analyze serta geometri PostGIS di peta.
Terhubung
Pilih PostgreSQL di daftar engine, atau tempel URL postgres:// atau postgresql://. Isi Host, Port (5432), Database dan User, lalu Password.
postgresql://[email protected]:5432/orders?sslmode=verify-full
- Autentikasi: user dan password, sesuai izin di
pg_hba.confserver (password SCRAM maupun MD5 bisa dipakai). Untuk autentikasi sertifikat, tambahkan Client certificate dan Client key di tab SSL. - SSL: kelima mode libpq, dari
disablesampaiverify-full. Host remote default kerequire,localhostkeprefer. Lihat Tunnel SSH dan TLS. - Penyimpanan password: password diambil dari macOS Keychain atau dari dialog. Selekta tidak membaca
~/.pgpass. - Application name: session Selekta tampil sebagai
Selektadipg_stat_activity.
Saat server menolak password, petunjuk di pesan error menyebut pg_hba.conf: password yang benar pun bisa ditolak kalau server tidak mengizinkan user itu dari alamatmu.
Navigator
Koneksi PostgreSQL menampilkan satu database yang ditulis di Database. Untuk menjelajah database lain di server yang sama, buat koneksi kedua (Duplicate adalah cara tercepat).
Di bawah database terlihat schema-nya, tanpa pg_catalog, information_schema, serta schema toast dan temp. Setiap schema punya empat folder:
| Folder | Isinya |
|---|---|
| tables | Tabel dan tabel berpartisi. Partisinya sendiri tidak ditampilkan terpisah. |
| views | View dan materialized view. |
| functions | Function dan procedure. |
| sequences | Sequence. |
Tabel dan view membuka kolom, index, foreign key dan trigger. Diagram schema bekerja per schema, dimulai dari public.
Pengaturan session
Session time zone di tab Advanced menentukan zona untuk now(), timestamp tanpa zona, dan cara nilai timestamptz ditampilkan.
- Server default mengikuti pengaturan server, termasuk
ALTER DATABASE … SET timezonedanALTER ROLE … SET timezone. - This Mac's zone memakai zona yang diset di Mac kamu.
- UTC memakai UTC.
Setiap session dari koneksi itu, termasuk setiap tab editor SQL, mendapat zona yang sama.
Connection pooler
Aktifkan Connection pooler kalau kamu terhubung lewat PgBouncer atau transaction pooler lain. Selekta lalu berhenti mengirim opsi startup yang ditolak pooler, dan Cancel menutup koneksi alih-alih membatalkan lewat backend process id (id itu milik koneksi server mana pun yang sedang dipilih pooler). Tanpa pooler, Cancel memakai pg_cancel_backend.
Read-only
Koneksi PostgreSQL read-only dimulai dengan default_transaction_read_only aktif dan menjalankan SET SESSION CHARACTERISTICS AS TRANSACTION READ ONLY sebelum setiap transaksi. Perintah yang menulis data, atau yang mencoba mematikan read-only, diblokir sebelum sampai ke server. Lihat Koneksi.
Explain dan transaksi
Explain (⌘E) menjalankan EXPLAIN (FORMAT JSON) dan menggambar plan sebagai pohon. Explain Analyze (⌥⌘E) menjalankan EXPLAIN (ANALYZE, BUFFERS, FORMAT JSON), yang benar-benar mengeksekusi perintahnya, jadi konfirmasi untuk perintah destruktif tetap berlaku. Detailnya ada di Explain plan.

Di koneksi Production dan Staging, DELETE atau UPDATE yang memakai WHERE lebih dulu mendapat estimasi jumlah baris dari planner. Di atas sekitar 1.000 baris perintah itu perlu dikonfirmasi, dan pesannya menampilkan estimasi tersebut. Lihat Keamanan production.
Dalam mode manual commit, perintah yang gagal membuat transaksi PostgreSQL berstatus aborted. Selekta memintamu melakukan rollback sebelum lanjut, sesuai aturan server.
Pemecah script mengenali body dengan dollar quote ($$ … $$) dan body function BEGIN ATOMIC … END, jadi CREATE FUNCTION dijalankan sebagai satu perintah.
PostGIS dan tipe data
Kolom bertipe geometry dan geography dibaca dari PostGIS dan bisa ditampilkan di panel peta; nilai geography tanpa SRID dianggap SRID 4326. Lihat Peta.

Nilai json dan jsonb dibuka sebagai JSON. Enum, domain dan tipe buatan user lainnya menampilkan nama tipenya di grid.
Backup dan batasan
Backup… dan Restore… memakai pg_dump dan pg_restore yang ada di Mac kamu, misalnya dari Homebrew. Keduanya tidak ikut dalam aplikasi. File SQL biasa di-restore lewat pemecah script milik Selekta dalam satu transaksi, karena psql juga tidak ikut; perintah backslash psql di file seperti itu dilewati dan dicatat di log. Lihat Backup dan restore.
Belum didukung saat ini:
- Menjelajah beberapa database dari satu koneksi.
- Kerberos (GSSAPI) dan metode login lain selain password.
- Membaca password dari
~/.pgpass.