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!

SQLite - PHP

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, kemudian bindValue 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 memberitahu fetchArray() 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