Selekta BETA EN Unduh untuk Mac
DOC 11

Hasil query dan edit data

Diperbarui 23 Oktober 2026

Hasil query dan data tabel memakai grid yang sama: Anda bisa menyeleksi, menyaring, menyalin, dan memeriksa baris di keduanya. Di tab Data sebuah tabel, setiap edit menjadi revisi berwarna amber yang Anda tinjau sebagai SQL lalu apply sekaligus, jadi tidak ada yang sampai ke server sebelum Anda melihat statement-nya.

Grid hasil

Baris ditampilkan dengan huruf kolom ala spreadsheet (A, B, C) dan nomor baris di kiri. Setiap sel menjaga tipenya: NULL tampil sebagai NULL, angka rata kanan, dan nilai JSON, biner, serta geometri punya tampilan sendiri.

  • Klik sel, seret atau Shift-klik untuk rentang, klik nomor baris untuk baris utuh, klik huruf kolom untuk seluruh kolom.
  • Klik header kolom untuk mengurutkan. Di hasil SQL, ini hanya mengurutkan baris yang sudah diambil. Di tab Data, tabel dibaca ulang dengan ORDER BY, dan sebuah chip di filter bar menunjukkan urutannya.
  • Seret tepi header untuk mengubah lebar kolom.
  • Find in results (⌘F) melompat di antara sel yang memuat teks yang dicari.
  • Klik kanan untuk Copy, Copy as…, Record, dan Value.

Footer berisi Fetch next dan Fetch all untuk sisa hasil yang besar, Record, Value, Map untuk hasil dengan kolom geometri, dan Export (⇧⌘E).

Menyaring baris

Filter fetched rows

⇧⌘L membuka filter bar di atas grid. Filter ini menyisakan baris yang teks tampilannya memuat apa yang Anda ketik, di kolom mana pun, dan menampilkan hitungan seperti 12 of 200 rows. Filter bekerja pada baris yang sudah diambil dan tidak mengirim apa pun ke server. Baris baru yang Anda tambahkan di tab Data dan belum di-apply selalu tetap terlihat.

Filter WHERE di tab Data

Tabel yang dibuka dari navigator membaca SELECT * FROM tabel itu, per halaman. Ketik kondisi di kolom Where lalu tekan Apply atau ⌘↵:

status = 'paid' AND total_amount > 1000000
  • ⌃Space melengkapi nama kolom, dan setelah = atau IN ( di dalam tanda kutip, menawarkan nilai yang terlihat di baris yang sudah diambil untuk kolom itu.
  • Filter harus berupa satu kondisi: ; di luar string ditolak sebelum apa pun dikirim.
  • Kalau server menolak filter, pesan error tampil di bawah kolom dan kursor dipindah ke posisinya. Untuk kolom yang tidak dikenal, Selekta menyarankan nama terdekat dengan tombol Use.
  • Filter dan urutan diingat per tabel di koneksi itu. Clear menghapus filter.

Ringkasan seleksi dan salin

Ringkasan seleksi

Seleksi dua sel atau lebih dan status bar menampilkan count, dan kalau sel-selnya angka juga sum, min, max, dan avg. Perhitungannya tepat untuk desimal, bukan floating point, dan sel NULL tidak dihitung.

Copy dan Copy as

⌘C menyalin seleksi sebagai teks dipisah tab tanpa header. ⇧⌘C membuka Copy as dengan pilihan format, cakupan, dan header:

Format Hasilnya
TSV Dipisah tab
CSV RFC 4180, nilai dikutip bila perlu
JSON Array of objects, nilai JSON disisipkan seperti tersimpan
SQL INSERT Satu INSERT INTO per baris, untuk tabel asal kalau diketahui
Markdown table Tabel pipe dengan baris header
IN list (1, 2, 3) dari kolom pertama, nilai NULL dilewati

Cakupannya Selected cells, Selected rows, atau All fetched rows. Include header berlaku untuk TSV dan CSV. Memilih format langsung menyalin. Pilihan format dan header diingat. Baris yang belum diambil tidak pernah ikut tersalin; untuk menyalin semua baris, gunakan Export.

Value viewer dan record panel

Value viewer

⇧F7, atau klik dua kali di hasil SQL, membuka nilai yang sedang difokus di panel samping:

  • JSON: Pretty dengan nomor baris dan warna, atau Raw, plus ukuran dan kedalaman nesting.
  • Teks: Wrap atau No wrap, dengan jumlah karakter, byte, dan baris.
  • Biner: ukuran, tipe yang terdeteksi, pratinjau untuk gambar, Hex atau Text, Copy hex, dan Save to file. Kalau grid hanya memegang awal dari nilai yang besar, Selekta membaca nilai lengkapnya lagi lewat key baris itu. Ini bekerja untuk hasil dari satu tabel yang memuat kolom key-nya.
  • Geometri: WKT dan peta kecil.

Record panel

⌘I menampilkan baris yang difokus sebagai daftar kolom, tipe, dan nilai, lebih mudah dibaca untuk tabel yang lebar. ⌥↑ dan ⌥↓ pindah ke baris sebelumnya dan berikutnya. Di tab Data, isiannya bisa diedit.

Mengedit data tabel dengan revisi

Buka tabel dari navigator untuk mendapatkan tab Data-nya. Baris bisa diedit kalau tabel punya primary key atau unique key dan koneksinya tidak read-only. Kalau tidak, sebuah banner menjelaskan alasannya dan menawarkan Write UPDATE in SQL editor.

Tab Data dengan revisi amber dan daftar revisi

  • Klik dua kali sel atau langsung mengetik untuk mengeditnya. Input diperiksa terhadap tipe kolom sebelum diterima.
  • Set cell to NULL dengan ⌘⌫ saat mengedit.
  • Add row dengan ⌥⌘N. Kolom yang punya default menampilkannya sampai Anda mengetik nilai. Kolom wajib (NOT NULL tanpa default) ditandai sebelum review.
  • Seleksi baris utuh lalu gunakan Delete row dari menu konteks untuk menandainya akan dihapus.
  • JSON dan teks panjang dibuka di panel edit dengan Apply edit, yang memeriksa JSON sambil Anda mengetik.
  • Kolom key, geometri, dan nilai biner tidak diedit di grid.

Setiap perubahan menjadi revisi: selnya diberi awan amber dengan tag seperti Δ3, dan strip Revisions mencantumkan SQL persis untuk masing-masing, sesuai urutan eksekusinya. Revisi hanya ada di Selekta sampai Anda meng-apply-nya. Discard membuangnya dan mencatatnya di riwayat sebagai VOID.

Review SQL dan apply

Tekan Apply atau ⌘S. Dialog Review SQL selalu muncul lebih dulu, di semua environment, dengan judul misalnya Apply 3 revisions to orders?. Dialog ini menampilkan koneksi tujuan dengan tag environment-nya dan setiap statement sesuai urutan eksekusi.

Dialog Review SQL dengan daftar statement yang akan di-apply

  1. Biarkan Run in one transaction menyala untuk menjalankan semua statement bersama. Kalau ada yang gagal atau memengaruhi 0 baris, semuanya di-rollback dan revisi Anda tetap tersimpan.
  2. Matikan untuk menjalankannya satu per satu; eksekusi berhenti di kegagalan pertama dan statement sebelumnya tetap berlaku.
  3. Tekan Apply atau ⌘↵, atau Copy SQL untuk menjalankannya sendiri.

Setiap UPDATE dan DELETE menargetkan satu baris lewat key-nya dan harus memengaruhi tepat satu baris. Kalau baris itu diubah atau dihapus di server setelah Anda mengambilnya, apply berhenti, tidak ada yang ditulis, dan revisinya ditandai dengan Refresh row dan Reapply. Setelah dibaca ulang, edit yang belum di-apply pada baris yang berubah di server juga ditandai. Nilai dikirim sebagai bound parameter, sedangkan review menampilkannya sebagai literal.

Manual commit

Setiap tab SQL dan setiap tab Data yang bisa diedit punya sakelar Auto dan Manual di action bar-nya.

  • Auto: setiap statement, atau setiap apply, langsung di-commit saat berhasil.
  • Manual: statement berjalan di dalam transaksi yang tetap terbuka. Bar menampilkan Manual commit dan jumlah yang pending, dan strip Pending mencantumkan apa yang sudah dijalankan. Belum ada yang permanen sampai Anda menekan Commit (⌥⌘↵). Rollback (⌥⌘⌫) membatalkan semuanya.

Manual commit dengan statement yang pending

Di tab Data dalam mode manual, revisi yang sudah di-apply menunggu Commit. Statement yang di-rollback tetap ada di riwayat sebagai VOID.

Selekta melindungi transaksi yang terbuka:

  • Menutup tab atau beralih ke Auto saat ada statement pending akan meminta Anda memilih Commit and close atau Roll back and close (atau switch). Cancel mempertahankan tab dan transaksinya.
  • Kalau koneksi terputus, server me-rollback transaksi. Saat Selekta tersambung lagi, statement Anda kembali sebagai revisi dengan Run again, Copy as SQL, dan Discard.
  • Kalau COMMIT gagal, sebuah banner menampilkan error dari server dan menyimpan statement Anda supaya bisa dijalankan lagi. SQLite tetap membiarkan transaksi terbuka setelah commit gagal, jadi Anda bisa memperbaiki penyebabnya lalu commit lagi.
  • Di MySQL, statement yang akan meng-commit transaksi terbuka secara implisit, seperti kebanyakan DDL, ditolak selama ada statement pending.
  • Kalau transaksi PostgreSQL dibatalkan oleh error, bar menampilkan Transaction aborted dan Anda perlu rollback sebelum lanjut.

Tab SQL baru dan tab Data tabel di koneksi Production dimulai dalam manual commit. Lihat Keamanan Production.