SQLite - Perl: Panduan untuk Pemula

Hai teman-teman, para ahli basis data masa depan! Saya sangat senang menjadi panduanmu dalam perjalanan menarik ini ke dunia SQLite dan Perl. Sebagai seseorang yang telah mengajar ilmu komputer selama bertahun-tahun, saya bisa katakan bahwa kombinasi ini seperti mentega dan selai - benar-benar lezat! Jadi, mari kita lipatkan lengan dan masuk ke dalam!

SQLite - Perl

Instalasi

Sebelum kita bisa mulai menciptakan magi basis data, kita perlu mengatur tools kita. Pictalkan ini sebagai persiapan dapurmu sebelum memasak makanan kelas dunia.

  1. Pertama-tama, pastikan Anda memiliki Perl terinstal di sistem Anda. Anda dapat memeriksa ini dengan membuka terminal dan mengetik:
perl -v

Jika Anda melihat informasi versi, Anda siap untuk maju!

  1. Selanjutnya, kita perlu menginstal modul DBI (Database Interface) dan driver SQLite. Buka terminal Anda dan ketik:
cpan install DBI
cpan install DBD::SQLite

Ini mungkin memakan beberapa menit, jadi jangan ragu untuk mengambil secangkir kopi saat menunggu.

API Interface DBI

Sekarang kita memiliki bahan-bahan siap, mari kita lihat buku resep - API Interface DBI. Ini adalah fungsi yang kita akan gunakan untuk berinteraksi dengan basis data SQLite kita.

Berikut adalah tabel metode DBI paling umum yang kita akan gunakan:

Metode Deskripsi
connect() Membuat koneksi ke basis data
prepare() Menyiapkan pernyataan SQL untuk eksekusi
execute() Mengeksekusi pernyataan yang disiapkan
fetch() Mengambil baris data dari pernyataan select
disconnect() Menutup koneksi basis data

Jangan khawatir jika ini terlihat membingungkan sekarang. Kita akan menjelajahi masing-masing dari ini secara detil saat kita maju.

Menghubungkan ke Basis Data

Mari kita mulai dengan membuat koneksi ke basis data SQLite kita. Ini seperti mengetuk pintu dan meminta izin masuk.

#!/usr/bin/perl
use strict;
use warnings;
use DBI;

my $driver   = "SQLite";
my $database = "test.db";
my $dsn = "DBI:$driver:dbname=$database";
my $userid = "";
my $password = "";

my $dbh = DBI->connect($dsn, $userid, $password, { RaiseError => 1 })
or die $DBI::errstr;

print "Basis data terbuka secara sukses\n";

mari kitauraikan ini:

  1. Kita mulai dengan mengimpor modul yang diperlukan.
  2. Kita menentukan driver (SQLite) dan nama basis data.
  3. Kita menciptakan string Data Source Name (DSN).
  4. Kita menggunakan DBI->connect() untuk membuat koneksi dan menyimpannya di $dbh.
  5. Jika koneksi sukses, kita cetak pesan sukses.

Membuat Tabel

Sekarang kita dalam, mari kita buat tabel untuk menyimpan beberapa data. Pictalkan ini sebagai membuat spreadsheet baru di Excel.

my $stmt = qq(CREATE TABLE COMPANY
(ID INT PRIMARY KEY     NOT NULL,
NAME           TEXT    NOT NULL,
AGE            INT     NOT NULL,
ADDRESS        CHAR(50),
SALARY         REAL););

my $rv = $dbh->do($stmt);
if($rv < 0) {
print $DBI::errstr;
} else {
print "Tabel dibuat secara sukses\n";
}

Berikut apa yang terjadi:

  1. Kita menentukan pernyataan SQL untuk membuat tabel bernama COMPANY.
  2. Kita menggunakan $dbh->do() untuk menjalankan pernyataan.
  3. Kita memeriksa apakah operasi sukses dan mencetak pesan yang sesuai.

Operasi INSERT

Sekarang saatnya menambahkan data ke tabel kita. Ini seperti mengisi baris di spreadsheet kita.

my $stmt = qq(INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY)
VALUES (1, 'Paul', 32, 'California', 20000.00 ));

my $rv = $dbh->do($stmt) or die $DBI::errstr;
print "Rekord dibuat secara sukses\n";

Dalam kode ini:

  1. Kita membuat pernyataan SQL INSERT.
  2. Kita menjalankan itu menggunakan $dbh->do().
  3. Jika sukses, kita mencetak pesan konfirmasi.

Operasi SELECT

Sekarang, mari kita mengambil data kita. Ini seperti membaca informasi dari spreadsheet kita.

my $stmt = qq(SELECT id, name, address, salary from COMPANY;);
my $sth = $dbh->prepare( $stmt );
my $rv = $sth->execute() or die $DBI::errstr;

if($rv < 0) {
print $DBI::errstr;
}

while(my @row = $sth->fetchrow_array()) {
print "ID = ". $row[0] . "\n";
print "NAME = ". $row[1] ."\n";
print "ADDRESS = ". $row[2] ."\n";
print "SALARY = ". $row[3] ."\n\n";
}

Berikut penjelasannya:

  1. Kita menyiapkan pernyataan SQL SELECT menggunakan $dbh->prepare().
  2. Kita menjalankan pernyataan dengan $sth->execute().
  3. Kita menggunakan loop while dengan $sth->fetchrow_array() untuk mengambil dan mencetak setiap baris.

Operasi UPDATE

kadang-kadang kita perlu mengubah data kita. Ini seperti mengedit sel di spreadsheet kita.

my $stmt = qq(UPDATE COMPANY set SALARY = 25000.00 where ID=1;);
my $rv = $dbh->do($stmt) or die $DBI::errstr;

if( $rv < 0 ) {
print $DBI::errstr;
} else {
print "Jumlah total baris yang diperbarui: $rv\n";
}

Dalam kode ini:

  1. Kita membuat pernyataan SQL UPDATE.
  2. Kita menjalankan itu dengan $dbh->do().
  3. Kita memeriksa berapa banyak baris yang terpengaruh dan mencetak hasilnya.

Operasi DELETE

Akhirnya, mari kita belajar bagaimana menghapus data. Ini seperti menghapus baris dari spreadsheet kita.

my $stmt = qq(DELETE from COMPANY where ID=2;);
my $rv = $dbh->do($stmt) or die $DBI::errstr;

if( $rv < 0 ) {
print $DBI::errstr;
} else {
print "Jumlah total baris yang dihapus: $rv\n";
}

Kode ini mengikuti pola yang sama seperti operasi UPDATE kita:

  1. Kita membuat pernyataan SQL DELETE.
  2. Kita menjalankan itu dengan $dbh->do().
  3. Kita memeriksa berapa banyak baris yang terpengaruh dan mencetak hasilnya.

Dan itu adalah! Anda telah belajar dasar-dasar kerja dengan basis data SQLite menggunakan Perl. Ingat, latihan membuat sempurna, jadi jangan khawatir untuk mencoba contoh-contoh ini. Sebelum Anda sadar, Anda akan membuat aplikasi basis data kompleks dengan mudah!

Credits: Image by storyset