SQLite - Perl: Panduan Pemula
Hai sana, para ahli basis data masa depan! Saya sangat gembira menjadi panduan Anda dalam perjalanan menarik ini ke dunia SQLite dan Perl. Sebagai seseorang yang telah mengajar ilmu komputer selama tahun-tahun, saya bisa katakan bahwa kombinasi ini seperti mentega kacang dan jelly - benar-benar lezat! Jadi, mari kita susun lengan dan masuk ke dalam!
Instalasi
Sebelum kita dapat mulai menciptakan keajaiban basis data, kita perlu mengatur tools kita. P想象 ini sebagai menyiapkan dapur Anda sebelum memasak makanan khusus.
- Pertama, 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 melanjutkan!
- Selanjutnya, kita perlu menginstal modul DBI (Database Interface) dan penggerak 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 Antarmuka DBI
Sekarang kita memiliki bahan-bahan siap, mari kita lihat buku resep - API Antarmuka DBI. Ini adalah fungsi-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 ke basis data |
Jangan khawatir jika ini terlihat membingungkan saat ini. Kita akan menjelajahi setiap metode ini secara rinci saat kita melanjutkan.
Menghubungkan ke Basis Data
Mari kita mulai dengan membuat koneksi ke basis data SQLite kita. Ini seperti mengetuk pintu dan meminta masuk secara sopan.
#!/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 dengan sukses\n";
mari kitauraikan ini:
- Kita mulai dengan mengimpor modul yang diperlukan.
- Kita menentukan penggerak (SQLite) dan nama basis data.
- Kita membuat string Data Source Name (DSN).
- Kita menggunakan
DBI->connect()
untuk membuat koneksi dan menyimpannya di$dbh
. - Jika koneksi sukses, kita cetak pesan sukses.
Membuat Tabel
Sekarang kita dalam, mari kita buat tabel untuk menyimpan beberapa data. Gamalkan 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 dengan sukses\n";
}
Berikut apa yang terjadi:
- Kita menentukan pernyataan SQL untuk membuat tabel bernama COMPANY.
- Kita menggunakan
$dbh->do()
untuk mengeksekusi pernyataan. - Kita memeriksa apakah operasi sukses dan mencetak pesan yang sesuai.
Operasi INSERT
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 dengan sukses\n";
Dalam kode ini:
- Kita membuat pernyataan SQL INSERT.
- Kita eksekusinya menggunakan
$dbh->do()
. - 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:
- Kita menyiapkan pernyataan SQL SELECT menggunakan
$dbh->prepare()
. - Kita eksekusi pernyataan dengan
$sth->execute()
. - 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:
- Kita membuat pernyataan SQL UPDATE.
- Kita eksekusinya dengan
$dbh->do()
. - Kita memeriksa berapa banyak baris yang terpengaruh dan mencetak hasilnya.
Operasi DELETE
Akhirnya, mari kita belajar 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:
- Kita membuat pernyataan SQL DELETE.
- Kita eksekusinya dengan
$dbh->do()
. - Kita memeriksa berapa banyak baris yang terpengaruh dan mencetak hasilnya.
Dan begitu juga! Anda telah belajar dasar-dasar kerja dengan basis data SQLite menggunakan Perl. Ingat, latihan membuat sempurna, jadi jangan takut untuk mencoba contoh-contoh ini. Sebelum Anda menyadari, Anda akan membuat aplikasi basis data kompleks dengan mudah!
Credits: Image by storyset