Lingkungan kerja SQLite sangat ringkas dibandingkan perangkat lunak basis data lain karena tidak ada server yang perlu dipasang. Topik ini memandu pemasangan sqlite3 di Linux, macOS, dan Windows, pemeriksaan versinya, perkenalan DB Browser for SQLite sebagai pendamping grafis, serta pembuatan basis data contoh perpustakaan. Program sqlite3 berupa antarmuka teks (command line interface, disingkat CLI), dan basis data perpustakaan itulah yang dipakai ulang pada seluruh topik berikutnya, sehingga pembuatannya dilakukan dengan cermat sejak awal.
Memasang sqlite3#
Banyak sistem operasi sudah mengirim sqlite3 bersama sistemnya, sehingga keberadaannya diperiksa terlebih dahulu sebelum memasang apa pun. Urutan ini menghindari pemasangan ganda yang tidak perlu. Apabila perintah sqlite3 belum dikenali sistem, pemasangan mengikuti manajer paket masing-masing sistem operasi melalui salah satu blok berikut.
# tidak-dijalankan
# Debian, Ubuntu, dan turunannya memakai manajer paket apt
sudo apt update
sudo apt install sqlite3# tidak-dijalankan
# Fedora dan turunannya memakai manajer paket dnf
sudo dnf install sqlite# tidak-dijalankan
# macOS sudah menyertakan sqlite3 bawaan sistem
# versi yang lebih baru (opsional) dapat dipasang melalui Homebrew
brew install sqlite# tidak-dijalankan
# Windows: unduh arsip command-line tools dari halaman unduhan situs resmi SQLite
# ekstrak berkasnya ke folder pilihan
# tambahkan folder hasil ekstraksi ke PATH melalui pengaturan Environment Variables
# setelah itu verifikasi dari Command Prompt:
sqlite3 --versionPerbedaan paling mencolok ada di Windows karena tidak memiliki manajer paket bawaan. Halaman unduhan resmi SQLite menyediakan arsip command-line tools yang berisi sqlite3.exe, dan yang dibutuhkan hanyalah mengekstraknya lalu mendaftarkan folder hasil ekstraksi ke PATH. Pada macOS, sqlite3 umumnya sudah ada sejak awal, sehingga pemasangan melalui Homebrew bersifat opsional bagi yang membutuhkan versi lebih baru.
Yang dipasang pada semua sistem tersebut sebenarnya kecil. Paket sqlite3 berisi satu program sqlite3 beserta library mesin basis datanya, tanpa layanan yang berjalan di latar belakang setelah prosesnya selesai. Ukuran unduhannya juga kecil dibandingkan mesin basis data server, dan pemasangannya tidak menambah satu pun proses yang harus diawasi setelah terminal ditutup.
Memeriksa versi#
Pemeriksaan versi dilakukan dengan satu perintah dan mengonfirmasi tiga hal sekaligus, yaitu perintah sqlite3 dikenali sistem, pustakanya terpasang, dan nomor versinya sesuai harapan. Nomor versi ini juga menjadi patokan saat mencari dokumentasi yang sesuai. Jalankan perintah berikut di terminal.
# memeriksa versi sqlite3 yang terpasang
sqlite3 --version3.54.1 2026-10-16 14:45:20 555e07ef33f69a0957d24d8e555b702464a131d6f1607f4c3c1e4551e8e6ca76 (64-bit)Keluaran tersebut dibaca dari kiri ke kanan sebagai berikut. Angka 3.54.1 adalah versi SQLite, dan jalur ini disusun berdasarkan versi tersebut. Bagian tanggal dan jam di tengah adalah waktu pembuatan biner yang dipakai lingkungan contoh, sedangkan deretan heksadesimal panjang adalah pengenal hash sumbernya dan akhiran 64-bit menyatakan arsitektur yang dituju. Nomor versi pada mesin pembaca boleh berbeda dari keluaran di atas, dan selisih versi minor umumnya tidak mengubah perilaku perintah yang dipakai pada jalur ini.
Pemeriksaan ini lebih bersifat konfirmasi daripada syarat ketat. Seluruh perintah pada jalur ini menggunakan kemampuan dasar sqlite3 yang stabil sejak versi lama, sehingga versi yang sedikit berbeda tetap dapat mengikuti setiap contoh. Pemeriksaan yang sama dapat diulang kapan saja ketika ada keraguan tentang mesin yang sedang dipakai.
DB Browser for SQLite#
Pekerjaan sehari-hari tetap nyaman di terminal, tetapi tampilan grafis membantu ketika struktur basis data perlu diamati sekilas. DB Browser for SQLite adalah aplikasi open source gratis yang menyediakan GUI (graphical user interface, antarmuka grafis) untuk berkas basis data SQLite. Aplikasi ini dipasang terpisah dari sqlite3 dan paketnya tersedia untuk Windows, macOS, dan Linux dari situs resminya.
Hal penting yang perlu dipahami, DB Browser tidak menciptakan format lain, melainkan membuka berkas basis data yang sama persis dengan yang dibaca sqlite3. Tab Database Structure memperlihatkan daftar tabel beserta definisinya, tab Browse Data menampilkan isi tabel baris demi baris, dan tab Execute SQL menerima pernyataan SQL bebas. Ketiga tab tersebut mencakup kebutuhan pemeriksaan harian tanpa mengetik satu perintah pun. Basis data perpustakaan yang dibuat pada bagian berikutnya dapat dibuka langsung dengan aplikasi ini untuk membandingkan tampilan grafisnya dengan keluaran command line.
Membuat basis data perpustakaan#
Seluruh contoh pada jalur ini bermain di ranah perpustakaan kecil dengan tiga tabel. Tabel buku menyimpan koleksi, tabel anggota menyimpan penggunanya, dan tabel peminjaman mencatat relasi keduanya beserta tanggal pinjam dan tanggal kembali. Ketiganya sengaja dibuat ringkas dengan angka yang mudah dihitung ulang, sehingga setiap query pada jalur ini dapat diverifikasi langsung terhadap data yang sama.
Buat basis datanya dari direktori kerja dengan perintah berikut. Bentuk <<'SQL' yang disebut heredoc mengalirkan semua baris di antara penandanya ke sqlite3 sebagai masukan, sehingga seluruh pernyataan berjalan dalam satu kali pemanggilan. Baris rm -f di awal menghapus berkas lama agar perintah aman diulang dengan hasil yang sama, sedangkan NULL pada kolom dikembalikan sengaja dipertahankan karena NULL memiliki semantik tersendiri yang layak dicontek sejak contoh pertama.
# membuat basis data perpustakaan yang dipakai sepanjang jalur
rm -f perpustakaan.db
sqlite3 perpustakaan.db <<'SQL'
CREATE TABLE buku (
id INTEGER PRIMARY KEY,
judul TEXT,
pengarang TEXT,
tahun INTEGER
);
CREATE TABLE anggota (
id INTEGER PRIMARY KEY,
nama TEXT,
bergabung TEXT
);
CREATE TABLE peminjaman (
id INTEGER PRIMARY KEY,
id_buku INTEGER,
id_anggota INTEGER,
dipinjam TEXT,
dikembalikan TEXT
);
INSERT INTO buku (id, judul, pengarang, tahun) VALUES
(1, 'Pengantar Statistika', 'Dewi Anggraini', 2018),
(2, 'Sejarah Maritim Nusantara', 'Ali Imran', 2019),
(3, 'Fisika untuk Pemula', 'Budi Wijaya', 2020),
(4, 'Sastra Klasik Indonesia', 'Ratna Sari', 2021),
(5, 'Dasar Pemrograman', 'Eka Prasetya', 2022),
(6, 'Anatomi Tumbuhan', 'Farhan Maulana', 2023);
INSERT INTO anggota (id, nama, bergabung) VALUES
(1, 'Ali', '2024-01-15'),
(2, 'Budi', '2024-02-01'),
(3, 'Citra', '2024-03-10'),
(4, 'Dewi', '2024-04-05'),
(5, 'Eka', '2024-05-20'),
(6, 'Farhan', '2024-06-12');
INSERT INTO peminjaman (id, id_buku, id_anggota, dipinjam, dikembalikan) VALUES
(1, 1, 1, '2024-07-01', '2024-07-08'),
(2, 2, 2, '2024-07-03', '2024-07-10'),
(3, 3, 3, '2024-08-05', NULL),
(4, 1, 4, '2024-08-12', '2024-08-20'),
(5, 4, 5, '2024-09-01', NULL),
(6, 5, 6, '2024-09-15', '2024-09-22');
SQLPerintah di atas menghasilkan satu berkas perpustakaan.db di direktori kerja. Tanpa pengaturan tambahan, sqlite3 membuat berkasnya apabila belum ada, sehingga pemanggilan pertama sekaligus membangun isinya. Kesalahan penulisan SQL akan tampil sebagai pesan error di terminal, sehingga seluruh proses diamati sampai selesai sebelum melanjutkan.
Memeriksa struktur dan isi#
Pemeriksaan pertama memakai dua perintah titik (dot-command), yaitu perintah khusus yang ditangani program sqlite3 sendiri dan bukan oleh mesin SQL. Perintah .tables mendaftar seluruh tabel yang ada, sedangkan .schema dengan nama tabel menampilkan pernyataan CREATE TABLE yang membentuk schema-nya, yakni definisi struktur tabel di dalam basis data. Jalankan keduanya terhadap basis data yang baru dibuat.
# mendaftar tabel dan memeriksa schema tabel buku
sqlite3 perpustakaan.db ".tables"
sqlite3 perpustakaan.db ".schema buku"anggota buku peminjaman
CREATE TABLE buku (
id INTEGER PRIMARY KEY,
judul TEXT,
pengarang TEXT,
tahun INTEGER
);Tiga nama tabel tampil berurutan menurut abjad, dan schema buku cocok persis dengan yang diketik pada heredoc. Nama tabel dikutip sebagai satu argumen agar perintah titiknya diteruskan utuh ke sqlite3. Pemeriksaan kedua membaca isi tabel buku dengan opsi -header dan -column agar hasilnya tampil sebagai tabel berkolom.
# menampilkan isi tabel buku sebagai tabel berkolom
sqlite3 -header -column perpustakaan.db "SELECT id, judul, pengarang, tahun FROM buku;"id judul pengarang tahun
-- ------------------------- -------------- -----
1 Pengantar Statistika Dewi Anggraini 2018
2 Sejarah Maritim Nusantara Ali Imran 2019
3 Fisika untuk Pemula Budi Wijaya 2020
4 Sastra Klasik Indonesia Ratna Sari 2021
5 Dasar Pemrograman Eka Prasetya 2022
6 Anatomi Tumbuhan Farhan Maulana 2023Enam baris buku tampil dengan kolom id yang berurutan, sehingga query pada jalur ini selalu dapat dirujuk ke id yang sama. Tabel anggota dan peminjaman juga sudah terisi enam baris, termasuk dua peminjaman yang kolom dikembalikannya bernilai NULL. Dengan berkas perpustakaan.db ini, setiap contoh pada jalur memiliki bahan yang sama dan hasilnya dapat dihitung ulang di mana saja.
Ringkasan#
- Program sqlite3 tersedia bawaan di banyak sistem atau dipasang lewat manajer paket, dan pemasangannya diperiksa dengan sqlite3 –version.
- DB Browser for SQLite membuka berkas basis data yang sama dengan sqlite3 melalui tampilan GUI tanpa membuat format tambahan.
- Basis data perpustakaan.db berisi tiga tabel, yaitu buku, anggota, dan peminjaman, masing-masing dengan enam baris data.
- Perintah titik .tables dan .schema memeriksa struktur basis data sebelum pekerjaan query dimulai.
Referensi#
- Command Line Shell For SQLite — SQLite — Dokumentasi resmi sqlite3 yang mencakup perintah titik .tables, .schema, dan opsi -header serta -column.
- SQLite Documentation — SQLite — Indeks dokumentasi resmi untuk menelusuri topik mana pun dari jalur ini lebih dalam.