Belajar Database Relational SQL Lite Bagian 2 – Operasi CRUID

By | November 1, 2022
Print Friendly, PDF & Email
667 Views

Belajar Database Relational menggunakan SQL Lite bagian 2 difokuskan pada operasi SQL yang sering dijumpai pada umumnya yaitu CRUID. Pada pembahasan Belajar Database Relational SQL Lite Bagian 1 kita sudah belajar mengenai install, set path, serta memberikan perintah di CLI Sqlite3, selanjutnya kita akan membahas mengenai CRUID yaitu melibatkan operasi Create, Read, Update/Insert, dan Delete.

Belajar Database Relational menggunakan SQL Lite bagian 2 hanya melibatkan 1 tabel saja sehingga operasi CRUID dapat kalian pahami dengan baik. Hal yang perlu kalian pahami mengenai tabel yaitu adanya sebuah primary key dan foregin key. Primary key adalah kolom yang bersifat unik isinya, misalkan NIP adalah hal unik setiap orang dan tidak mungkin sama. Agar lebih mudah, kita ikuti saja aturan berikut

  1. nama tabel harus huruf kecil semua dan dipisahkan dengan underscore
  2. tidak boleh didahului dengan angka
  3. tidak boleh mengandung simbol

Data type Sqlite ada 5 macam

  1. TEXT
  2. NUMERIC
  3. INTEGER
  4. REAL
  5. BLOB

Uniknya Sqlite sampai postingan ini ditulis yaitu tidak mendukung format date sehingga jika ingin menyimpan date maka pilih saja text. Yuk ikuti saja Belajar Database Relational menggunakan SQL Lite Bagian 2 dibawah ini

Sqlite Create Table

Setiap tabel mempunyai informasi header dan tipe datanya, misalkan ada sebuah table dengan nama biodata mempunyai informasi header (sebaiknya menggunakan huruf kecil yang dipisahkan dengan underscore)

  1. Id_biodata: integer, primary key, auto increment
  2. nama: string
  3. kota: string
  4. tanggal_lahir: string

table biodata mempunyai isi sebagai berikut

Perintah .open digunakan untuk membuka / membuat database, oiya pastikan dulu current directory sebelum memanggil sqlitenya, misalkan pada contoh berikut berada di F:/sqlite akan membuat file database denga nama contoh-database.db

See also  Database Sqlite Java

.open contoh-database.db

Lebih jelasnya sebagai berikut

PS F:\Sqlite> sqlite3
SQLite version 3.32.3 2020-06-18 14:00:33
Enter ".help" for usage hints.
Connected to a transient in-memory database.
Use ".open FILENAME" to reopen on a persistent database.
sqlite> .open  contoh-database.db
sqlite>

Kemudian membuat sebuah table kontak sesuai dengan informasi header diatas

sqlite> CREATE TABLE kontak (
   ...> id_biodata int primary key,
   ...> nama text,
   ...> tanggal_lahir text,
   ...> kota text);

Jangan lupa tekan enter, untuk cek apakah table diatas sudah ada dalam database contoh-database.db, maka gunakan perintah .tables

sqlite> .tables

Adapun untuk mengetahui schema/struktur table, gunakan perintah  .schema nama_table, contohnya

sqlite> .schema kontak

hasil

CREATE TABLE kontak (
id_biodata int primary key,
nama text,
tanggal_lahir text,
kota text);

Pembuatan database dan schema table sudah kita pelajari sesuai dengan langkah-langkah diatas, hal selanjutnya yaitu operasi insert

SQLite Insert Data

Table kontak masih kosong, belum ada data masuk, perintah yang digunakan untuk memasukan record kedalam sebuah table

INSERT INTO table (column1,column2 ,..)
VALUES( value1,	value2 ,...);
sqlite> INSERT INTO kontak(id_biodata,nama,tanggal_lahir,kota)
   ...> VALUES(1,'agus','04/06/1988','semarang');
sqlite>

Lakukan hal diatas untuk semua data seperti berikut

sqlite> INSERT INTO kontak(id_biodata,nama,tanggal_lahir,kota)
   ...> VALUES(2,'bejo','01/11/2000','solo');
sqlite> INSERT INTO kontak(id_biodata,nama,tanggal_lahir,kota)
   ...> VALUES(3,'cucup','09/09/1988','kendari');
sqlite> INSERT INTO kontak(id_biodata,nama,tanggal_lahir,kota)
   ...> VALUES(4,'deden','01/07/1986','makasar');
sqlite> INSERT INTO kontak(id_biodata,nama,tanggal_lahir,kota)
   ...> VALUES(5,'eko','08/09/2001','surabaya');
sqlite> INSERT INTO kontak(id_biodata,nama,tanggal_lahir,kota)
   ...> VALUES(6,'farah','31/12/2000','kediri');
sqlite> INSERT INTO kontak(id_biodata,nama,tanggal_lahir,kota)
   ...> VALUES(7,'galih','06/12/1988','jepara');
sqlite> INSERT INTO kontak(id_biodata,nama,tanggal_lahir,kota)
   ...> VALUES(8,'bejo','09/12/1989','pati');

SQLite Select Data

Untuk menampilkan isi sebuah table, gunakan perintah select

SELECT (column1,column2 ,..) FROM table;

Contoh untuk menampilkan kolom nama pada table kontak

sqlite> SELECT nama FROM KONTAK;
agus
bejo
cucup
deden
eko
farah
galih
bejo
sqlite>

Sedangkan untuk menampilkan semua kolom cukup diberikan simbol asterik

sqlite> SELECT * FROM kontak;
1|agus|04/06/1988|semarang
2|bejo|01/11/2000|solo
3|cucup|09/09/1988|kendari
4|deden|01/07/1986|makasar
5|eko|08/09/2001|surabaya
6|farah|31/12/2000|kediri
7|galih|06/12/1988|jepara
8|bejo|09/12/1989|pati
sqlite>

Selain itu, bisa juga menampilkan record dengan syarat kondisi, yaitu WHERE

SELECT
   column_list
FROM
   table
WHERE
   search_condition;

Syarat kondisi yang bisa digunakan yaitu

WHERE column_1 = 100;

WHERE column_2 IN (1,2,3);

WHERE column_3 LIKE 'An%';

WHERE column_4 BETWEEN 10 AND 20;

Misalkan hanya ingin memilih nama = ‘bejo’

sqlite> SELECT * FROM kontak WHERE nama='bejo';
2|bejo|01/11/2000|solo
8|bejo|09/12/1989|pati

Menampilkan kota yang didahului huruf s

sqlite> SELECT * FROM kontak WHERE kota LIKE 's%';
1|agus|04/06/1988|semarang
2|bejo|01/11/2000|solo
5|eko|08/09/2001|surabaya

Sqlite Update data

Update data membutuhkan sebuah id unik atau disebut dengan primary key, pada tabel diatas terdapat nama yang sama yaitu bejo dengan id 2 dan 8. Nah yang akan kita ubah hanya id 8 dengan semula pati menjadi kediri dengan perintah SQL nya yaitu

UPDATE tableSET column_1 = new_value_1,
    column_2 = new_value_2WHERE
    search_condition 

Yuk buat update datanya

sqlite> UPDATE kontak SET kota ='kediri' where id_biodata = 8;

Kita cek lagi dengan perintah  select * from

sqlite> SELECT * FROM kontak;
1|agus|04/06/1988|semarang
2|bejo|01/11/2000|solo
3|cucup|09/09/1988|kendari
4|deden|01/07/1986|makasar
5|eko|08/09/2001|surabaya
6|farah|31/12/2000|kediri
7|galih|06/12/1988|jepara
8|bejo|09/12/1989|kediri
sqlite>

Sqlite Delete data

Perintah untuk delete hampir mirip-mirip dengan update yang membutuhkan syarat kondisi. Perintah SQL Delete secara umum yaitu

DELETE FROM table
WHERE search_condition;

Langsung saja kita coba untuk delete id_biodata = 8

sqlite> DELETE FROM kontak WHERE id_biodata=8;

Biar lebih yakin, cek lagi dengan perintah  sqlite> SELECT * FROM kontak; . Maka hanya akan terdiri dari 7 baris saja

1|agus|04/06/1988|semarang
2|bejo|01/11/2000|solo
3|cucup|09/09/1988|kendari
4|deden|01/07/1986|makasar
5|eko|08/09/2001|surabaya
6|farah|31/12/2000|kediri
7|galih|06/12/1988|jepara

Gimana menurut kalian? Sangat mudah bukan? Postingan diatas hanya sebagai dasar-dasar SQL yang hanya terdiri dari 1 table saja, selanjutnya kita akan bahas mengenai database relational seperti primary key, foreign key. Oiya ada beberapa perintah SQL yang sangat berguna pada proses SELECT yaitu

  1. order by
  2. select distinct
  3. limit
  4. between
  5. in
  6. like
  7. group by
See also  Belajar Database Relational SQL Lite Bagian 3 - DB Browser Sqlite

Kita akan pelajari dulu yang ke 7 fitur diatas. Ikuti terus yaa

Sqlite Order By

Perintah oder by digunakan untuk mengurutkan berdasarkan kolom tertentu, misalkan sesuai urutan abjad dari kota, sehingga nama kota teratas jepara

SELECT kota,nama,tanggal_lahir FROM kontak ORDER BY kota ASC;

hasil

jepara|galih|7|06/12/1988
kediri|farah|6|31/12/2000
kendari|cucup|3|09/09/1988
makasar|deden|4|01/07/1986
pati|bejo|8|09/12/1989
semarang|agus|1|04/06/1988
solo|bejo|2|01/11/2000
surabaya|eko|5|08/09/2001

Sqlite Select Distinct

Perintah distinct digunakan untuk menampilkan/seleksi yang unik atau dalam kata lain menghilangkan duplikasi. Berdasarkan nama pada tabel kontak terdapat nama yang sama yaitu bejo. Maka kita ingin menghilangkan nama-nama yang sama sehingga dari 8 records hanya akan tampil 7 saja

SELECT DISTINCT nama FROM kontak;

hasil

agus
bejo
cucup
deden
eko
farah
galih

 

Ikuti terus postingan Yuk Belajar Database Relational menggunakan SQL yaitu SQLite Delete

Belajar Database Relational SQL Lite Bagian 3

Leave a Reply

Your email address will not be published.




Enter Captcha Here :