SQLite - PHP: Panduan Pemula

Hai sana, bakal bintang pemrograman! Selamat datang ke perjalanan menarik kita ke dunia SQLite dan PHP. Saya sangat gembira menjadi pandu Anda saat kita mengembangkan话题 ini secara bersama. Jangan khawatir jika Anda baru dalam pemrograman - kita akan mengambil langkah demi langkah, dan sebelum Anda menyadari, Anda akan menjalankan basis data seperti seorang ahli!

SQLite - PHP

Instalasi

Sebelum kita melompat ke dunia menarik SQLite dan PHP, kita perlu memastikan kita memiliki semua alat yang diperlukan. Itu seperti menyiapkan untuk sebuah petualangan memasak - Anda memerlukan bahan dan alat masak yang siap!

Pertama, mari periksa jika PHP terinstal 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 web 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 bisa menemukan lokasinya dengan menjalankan php --ini) dan cari baris ini:

extension=sqlite3

Jika itu dicomment (ada tanda titik koma di awalnya), hilangkan tanda titik koma untuk mengaktifkannya.

Selamat! Anda telah menyelesaikan langkah pertama perjalanan kita. Sekarang, mari kita pindah ke bagian menarik - menggunakan SQLite dengan PHP!

Antarmuka API PHP

PHP menyediakan set fungsi untuk berinteraksi dengan basis data SQLite. Pihak ini bisa dianggap sebagai kotak peralatan Anda - setiap fungsi adalah peralatan berbeda yang membantu Anda bekerja dengan basis data Anda. Berikut adalah beberapa yang paling penting:

Fungsi Deskripsi
sqlite3::open() Membuka basis data SQLite
sqlite3::exec() Menjalankan kueri SQL
sqlite3::query() Menjalankan kueri SQL dan mengembalikan himpunan hasil
sqlite3::close() Menutup koneksi basis data

Jangan khawatir jika ini tampak membingungkan sekarang - kita akan melihat bagaimana menggunaikan setiap dari ini saat kita maju!

Menghubungkan ke Basis Data

Sekarang kita memiliki kotak peralatan siap, mari kita mulai dengan menghubungkan ke basis data. Itu seperti membuka pintu ke ruang penyimpanan data Anda. Berikut adalah 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 basis data kita. Jika itu tidak ada, SQLite akan menciptakan itu untuk kita.

Ingat, selalu wrap operasi basis data Anda dalam blok try-catch untuk mengelola kesalahan dengan mulus. Berikut adalah versi yang lebih tangguh:

<?php
try {
$db = new SQLite3('myDatabase.db');
echo "Berhasil terhubung ke basis data!";
} catch (Exception $e) {
echo "Tidak dapat terhubung ke basis data: " . $e->getMessage();
}
?>

Membuat Tabel

Sekarang kita terhubung, mari kita buat tabel untuk menyimpan beberapa data. Bayangkan Anda menjalankan perpustakaan kecil, dan Anda ingin mencatat buku Anda. Berikut adalah 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 "Tabel berhasil dibuat!";
} else {
echo "Galat membuat tabel: " . $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 meningkatkan nilai.

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 "Buku berhasil ditambahkan!";
} else {
echo "Galat menambahkan buku: " . $db->lastErrorMsg();
}
?>

Ini mungkin terlihat sulit, tapi itu sebenarnya cukup sederhana:

  • Kita menggunakan klausa siap (:title, :author, :year) untuk mencegah serangan SQL injection.
  • Kita prepare kueri kita, kemudian bindValue ke setiap placeholder.
  • Akhirnya, kita execute pernyataan.

Operasi SELECT

Sekarang, mari kitaambil buku-buku kita dari basis data:

<?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>";
}
?>

Ini adalah apa yang terjadi:

  • Kita menggunakan $db->query() untuk menjalankan kueri 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 basis data 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 "Buku berhasil diperbarui!";
} else {
echo "Galat memperbarui buku: " . $db->lastErrorMsg();
}
?>

Ini mirip dengan operasi INSERT kita, tapi kita menggunakan perintah SQL UPDATE saja.

Operasi DELETE

Akhirnya, mari kita belajar bagaimana menghapus buku dari basis data 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 "Buku berhasil dihapus!";
} else {
echo "Galat menghapus buku: " . $db->lastErrorMsg();
}
?>

Dan itu adalah nya! Kita telah meliputi semua operasi dasar bekerja dengan SQLite di PHP. Ingat, latihan membuat sempurna. Cobalah membuat proyek basis data Anda sendiri, mungkin daftar tugas atau buku resep. Semakin banyak Anda bermain dengan konsep ini, semakin nyaman Anda akan merasakan.

Saya harap Anda menikmati perjalanan ini sebaik saya. Terus coding, terus belajar, dan yang paling penting, bersenang-senang! Sampai jumpa lagi, selamat databasing!

Credits: Image by storyset