SQLite - PHP: Panduan untuk Pemula
Hai sana, super bintang coding masa depan! Selamat datang ke perjalanan menarik kita ke dunia SQLite dan PHP. Saya sangat gembira menjadi pandu Anda saat kita meng eksplorasi topik ini secara bersama. Jangan khawatir jika Anda baru dalam programming - kita akan mengambil langkah demi langkah, dan sebelum Anda mengetahui, Anda akan mengelola database seperti seorang pro!
Instalasi
Sebelum kita melompat ke dunia menarik SQLite dan PHP, kita perlu memastikan kita memiliki semua alat yang diperlukan. Itu seperti mempersiapkan untuk sebuah petualangan memasak - Anda memerlukan bahan dan perkakas yang siap!
Pertama, mari periksa jika PHP terinstall di komputer Anda. Buka command prompt atau terminal Anda dan ketik:
php -v
Jika Anda melihat informasi versi, bagus! Anda sudah siap. Jika tidak, jangan khawatir - buka situs resmi PHP (php.net) dan ikuti panduan instalasi mereka.
Berikutnya, kita perlu mengaktifkan SQLite di PHP. Biasanya, itu diaktifkan secara default, tapi mari kita memastikan. Buka file php.ini
Anda ( Anda dapat menemukan lokasinya dengan menjalankan php --ini
) dan cari baris ini:
extension=sqlite3
Jika itu dicomment (ada tanda semicolon di awal), hapus tanda semicolon untuk mengaktifkannya.
Selamat! Anda telah menyelesaikan langkah pertama dalam perjalanan kita. Sekarang, mari kita lanjut ke bagian menarik - menggunakan SQLite dengan PHP!
Antarmuka API PHP
PHP menyediakan set fungsi untuk berinteraksi dengan database SQLite. Bayangkan ini seperti peralatan Anda - setiap fungsi adalah alat yang berbeda untuk membantu Anda bekerja dengan database Anda. Berikut adalah beberapa yang paling penting:
Fungsi | Deskripsi |
---|---|
sqlite3::open() | Membuka database SQLite |
sqlite3::exec() | Menjalankan query SQL |
sqlite3::query() | Menjalankan query SQL dan mengembalikan set hasil |
sqlite3::close() | Menutup koneksi database |
Jangan khawatir jika ini masih membingungkan saat ini - kita akan melihat bagaimana menggunaikan setiap dari ini nanti!
Menyambung ke Database
Sekarang kita memiliki peralatan kita siap, mari kita mulai dengan menyambung ke database. Itu seperti membuka pintu ke ruangan penyimpanan data Anda. Berikut cara kita melakukannya:
<?php
$db = new SQLite3('myDatabase.db');
?>
Baris ini melakukan banyak hal! Mari kitauraikan:
- Kita menciptakan objek
SQLite3
baru dan menyimpannya di variabel$db
. - 'myDatabase.db' adalah nama file database kita. Jika itu belum ada, SQLite akan menciptakannya bagi kita.
Ingat, selalu wrap operasi database Anda di blok try-catch untuk menangani kesalahan dengan mulus. Berikut adalah versi yang lebih kuat:
<?php
try {
$db = new SQLite3('myDatabase.db');
echo "Connected to the database successfully!";
} catch (Exception $e) {
echo "Couldn't connect to the database: " . $e->getMessage();
}
?>
Membuat Tabel
Sekarang kita sudah tersambung, mari kita buat tabel untuk menyimpan beberapa data. Bayangkan Anda menjalankan perpustakaan kecil, dan Anda ingin mencatat buku Anda. Berikut cara Anda mungkin membuat tabel 'books':
<?php
$db = new SQLite3('library.db');
$query = "CREATE TABLE IF NOT EXISTS books (
id INTEGER PRIMARY KEY AUTOINCREMENT,
title TEXT NOT NULL,
author TEXT NOT NULL,
published_year INTEGER
)";
if ($db->exec($query)) {
echo "Table created successfully!";
} else {
echo "Error creating table: " . $db->lastErrorMsg();
}
?>
Mari kitauraikan ini:
- Kita menggunakan
CREATE TABLE IF NOT EXISTS
untuk menghindari kesalahan jika tabel sudah ada. - Kita mendefinisikan empat kolom: id, title, author, dan published_year.
-
id
adalah kunci utama dan akan otomatis bertambah.
Operasi INSERT
Bagus! Kita memiliki tabel. Sekarang, mari kita tambahkan beberapa buku ke perpustakaan kita:
<?php
$db = new SQLite3('library.db');
<title> = "The Great Gatsby";
$author = "F. Scott Fitzgerald";
$year = 1925;
$query = "INSERT INTO books (title, author, published_year)
VALUES (:title, :author, :year)";
$stmt = $db->prepare($query);
$stmt->bindValue(':title', $title, SQLITE3_TEXT);
$stmt->bindValue(':author', $author, SQLITE3_TEXT);
$stmt->bindValue(':year', $year, SQLITE3_INTEGER);
if ($stmt->execute()) {
echo "Book added successfully!";
} else {
echo "Error adding book: " . $db->lastErrorMsg();
}
?>
Ini mungkin terlihat sulit, tapi sebenarnya cukup mudah:
- Kita menggunakan statement yang dipersiapkan (
:title
,:author
,:year
) untuk mencegah serangan SQL injection. - Kita
prepare
query kita, kemudianbindValue
ke setiap placeholder. - Akhirnya, kita
execute
pernyataan itu.
Operasi SELECT
Sekarang, mari kitaambil buku-buku kita dari database:
<?php
$db = new SQLite3('library.db');
$query = "SELECT * FROM books";
$result = $db->query($query);
while ($row = $result->fetchArray(SQLITE3_ASSOC)) {
echo "Title: " . $row['title'] . "<br>";
echo "Author: " . $row['author'] . "<br>";
echo "Published: " . $row['published_year'] . "<br><br>";
}
?>
Berikut apa yang terjadi:
- Kita menggunakan
$db->query()
untuk menjalankan query SELECT kita. - Kita menggunakan perulangan while dengan
fetchArray()
untuk mengambil setiap baris. -
SQLITE3_ASSOC
memberitahufetchArray()
untuk mengembalikan array asosiatif.
Operasi UPDATE
Ups! Kita membuat kesalahan. "The Great Gatsby" sebenarnya diterbitkan pada tahun 1925, bukan 1924. Mari kita perbarui database kita:
<?php
$db = new SQLite3('library.db');
$query = "UPDATE books SET published_year = :year WHERE title = :title";
$stmt = $db->prepare($query);
$stmt->bindValue(':year', 1925, SQLITE3_INTEGER);
$stmt->bindValue(':title', 'The Great Gatsby', SQLITE3_TEXT);
if ($stmt->execute()) {
echo "Book updated successfully!";
} else {
echo "Error updating book: " . $db->lastErrorMsg();
}
?>
Ini mirip dengan operasi INSERT kita, tapi kita menggunakan perintah UPDATE SQL saja.
Operasi DELETE
Akhirnya, mari kita belajar bagaimana menghapus buku dari database kita:
<?php
$db = new SQLite3('library.db');
$query = "DELETE FROM books WHERE title = :title";
$stmt = $db->prepare($query);
$stmt->bindValue(':title', 'The Great Gatsby', SQLITE3_TEXT);
if ($stmt->execute()) {
echo "Book deleted successfully!";
} else {
echo "Error deleting book: " . $db->lastErrorMsg();
}
?>
Dan itu adalah nya! Kita telah meliputi semua operasi dasar kerja dengan SQLite di PHP. Ingat, latihan membuat sempurna. Cobalah membuat proyek database Anda sendiri, mungkin sebuah daftar tugas atau buku resep. Semakin banyak Anda bermain dengan konsep ini, semakin nyaman Anda akan merasakan.
Saya harap Anda menikmati perjalanan ini seperti saya. Tetap kode, tetap belajar, dan terutama, bersenang-senang! Sampaijumpa lagi, senang databasing!
Credits: Image by storyset