Jika Anda pernah bekerja dengan sistem basis data relasional, kemungkinan besar Anda pernah mendengar tentang sistem basis data populer seperti MySQL, SQL Server, atau PostgreSQL. SQLite adalah RDBMS lain yang sangat berguna yang sangat mudah diatur dan dioperasikan. Juga, ia memiliki banyak fitur berbeda dari database relasional lainnya. Tutorial SQLite ini mengajarkan konsep dasar yang perlu Anda ketahui dengan bantuan praktik langsung yang ekstensif.
Topik yang dibahas dalam artikel ini adalah:
- Apa itu SQLite?
- Fitur SQLite
- Menginstal SQLite di Windows
- Perintah SQLite
- Perintah Basis Data
- Perintah Tabel
- Operasi CRUD
- Klausul/Kondisi SQLite
- Bergabung dalam SQLite
- Kekurangan SQLite
Tutorial SQLite:Apa itu SQLite?
Berikut adalah definisi standar industri SQLite:
SQLite adalah mesin database relasional transaksi open-source, tanpa konfigurasi, mandiri, mandiri, yang dirancang untuk disematkan ke dalam aplikasi.
Anda dapat mempertimbangkan SQLite sebagai “pemantik ” versi RDBMS kompleks lainnya (Oracle, SQL, dll.), di mana mesin basis datanya dikonfigurasi untuk pemrosesan independen (perpustakaan dalam proses) yaitu tanpa server, mandiri, tanpa konfigurasi, dan transaksional . Ia dikenal karena portabilitas, keandalan, dan kinerjanya yang kuat bahkan di lingkungan dengan memori rendah. Selain itu, SQLite adalah pilihan populer sebagai basis data tertanam untuk penyimpanan lokal/klien di program atau aplikasi akhir, tidak seperti RDBMS lainnya, di mana mesin DB server-klien dikonfigurasi.
Fitur SQLite
SQLite menawarkan banyak fitur berbeda seperti:
- Tanpa server: Sebagian besar database SQL diimplementasikan sebagai proses server terpisah, tetapi SQLite tidak memiliki proses server terpisah. Ini adalah mesin database tanpa server. Ia membaca dan menulis langsung ke file disk biasa.
- Konfigurasi Nol: Tidak memerlukan konfigurasi untuk menjalankannya. Artinya, tidak ada proses server yang perlu dimulai, dihentikan, atau dikonfigurasi seperti pada sistem client/server.
- Pengetikan Manifes: SQLite menggunakan pengetikan manifes, yang memungkinkan penyimpanan sejumlah tipe data apa pun ke dalam kolom apa pun tanpa peduli tipe data yang dideklarasikan kolom. Perhatikan bahwa ada pengecualian tertentu untuk aturan ini.
- Ringan: Sesuai dengan namanya, library SQLite sangat ringan. Masalahnya adalah, meskipun ruang yang digunakan bervariasi tergantung pada sistem tempat ia dipasang, ia dapat menghabiskan ruang kurang dari 600KiB.
- Portabel: Tidak seperti DBMS lainnya, seluruh database SQLite disimpan dalam satu file. File ini dapat dibagikan melalui media yang dapat dipindahkan atau protokol transfer file dengan sangat mudah.
- Pilihan Beragam: Banyak bahasa pemrograman menyediakan binding untuk SQLite, termasuk C, C++, C#, Java, JavaScript, Ruby, Python, dan banyak lagi.
- Gratis: SQLite gratis dan open-source. Untuk bekerja dengan SQLite, lisensi komersial tidak diperlukan.
Seperti yang tercantum di atas SQLite dikenal dengan konfigurasi nol yang berarti tidak diperlukan pengaturan atau administrasi yang rumit. Di bagian selanjutnya dari tutorial SQLite ini, mari kita lihat cara menginstal SQLite di sistem Anda.
Tutorial SQLite:Menginstal SQLite di Windows
Langkah-langkah yang harus diikuti adalah:
Langkah1: Buka situs web resmi SQLite dan klik tautan yang sesuai untuk mengunduh binari yang telah dikompilasi.
Langkah2: Unduh file zip baris perintah SQLite (di sini:sqlite-tools-win32-x86-3270200.zip) dan perluas file-file ini dalam folder pilihan Anda.
Alat baris perintah SQLite ini akan berisi produk SQLite berikut
- Inti SQLite :Inti SQLite berisi mesin basis data aktual dan API publik.
- Alat baris perintah SQLite3 :Aplikasi sqlite3 adalah alat baris perintah yang dibangun di atas inti SQLite.
- Ekstensi Tcl :Pustaka ini pada dasarnya adalah salinan inti SQLite dengan pengikatan Tcl.
- Alat penganalisis SQLite :Alat penganalisis SQLite digunakan untuk menganalisis file database.
Langkah3: Setelah itu, memulai baris perintah SQLite semudah mengklik aplikasi sqlite3, yang akan membuat baris perintah muncul.
Jika Anda ingin menguji lebih lanjut, cukup ketik .help perintah dari sqlite> prompt untuk melihat semua perintah yang tersedia di sqlite3 seperti gambar di bawah ini.
Catatan: Secara default, sesi SQLite menggunakan database dalam memori, oleh karena itu, semua perubahan akan hilang saat sesi berakhir.
Cukup sederhana bukan? Kemudian, mari kita mulai dengan perintah SQLite.
Tutorial SQLite:Perintah SQLite
Bagian tutorial SQLite ini menyajikan pernyataan SQL dasar yang dapat Anda gunakan dengan SQLite.
Catatan: Perintah SQLite diakhiri dengan titik koma (;
). Ini memberitahu SQLite bahwa perintah Anda selesai dan harus dijalankan. Selain itu, Anda dapat menyebarkan perintah Anda di beberapa baris dan menggunakan titik koma di baris terakhir.
Perintah Basis Data
Bagian ini terdiri dari perintah-perintah itu, yang dengannya Anda dapat menangani database Anda. Perintahnya adalah:
- SQLite Buat Basis Data
SQLite tidak menggunakan pernyataan CREATE DATABASE seperti pada sistem manajemen database relasional lainnya, seperti MySQL, SQL Server, dll. Untuk membuat database baru di SQLite, cukup masukkan sqlite3 diikuti dengan nama file yang ingin Anda gunakan untuk database. Kode berikut membuat file database bernama StudentDetails.db:
Contoh
sqlite3 StudentDetails.db;sqlite> .database utama:D:sqliteStudentDetails.db;
- Database Lampirkan SQLite
Bila Anda memiliki banyak basis data, Anda hanya dapat menggunakan satu basis data dalam satu waktu. Dalam SQLite, pernyataan ATTACH DATABASE digunakan untuk melampirkan database tertentu untuk koneksi saat ini. Setelah perintah ini, semua pernyataan SQLite akan dieksekusi di bawah database terlampir.
Contoh
sqlite> Lampirkan DATABASE 'DepartmentDetails.db' AS 'Department';sqlite> .databasesmain:D:sqliteStudentDetails.db;Department:D:sqliteDepartmentDetails.db
- Database Detach SQLite
Dalam SQLite, pernyataan DETACH DATABASE digunakan untuk melepaskan database bernama alias dari koneksi database yang sebelumnya dilampirkan dengan menggunakan pernyataan ATTACH. Jika file database yang sama telah dilampirkan dengan beberapa alias, maka perintah ini akan memutuskan hanya nama yang diberikan dan sisa lampiran akan tetap ada. Basis data di dalam memori atau basis data sementara akan dimusnahkan sepenuhnya dan kontennya akan hilang.
Contoh
Perintah Tabel
Di sini kita akan belajar bagaimana menangani tabel saat menggunakan SQLite.
- SQL Buat Tabel
Dalam SQLite, pernyataan CREATE TABLE digunakan untuk membuat tabel baru. Saat membuat tabel, Anda perlu memberi nama tabel dan menentukan kolom dan tipe datanya untuk setiap kolom.
Sintaks:
CREATE TABLE table_name( Column1 column_type [constraints] Column2 column_type [constraints] [.....] );
Contoh
BUAT TABEL StudentInfo(ID INT PRIMARY KEY NOT NULL,NAME TEXT NOT NULL,AGE INT NOT NULL,ADDRESS CHAR(50),DEPARTMENTID INTEGER NOT NULL,PHONE TEXT DEFAULT 'UNKNOWN',FOREIGN KEY(DEPARTMENTID) REFERENCES DepartmentInfo( DeptID));
Anda dapat memeriksa apakah tabel sudah dibuat atau belum dengan menggunakan .tabel perintah seperti gambar di bawah ini. Perhatikan bahwa saya telah membuat tabel bernama DepartmentInfo di mana DeptID adalah kunci utama. Tabel Departemen memiliki batasan kunci Asing ke tabel Siswa.
sqlite> .tablesStudentInfo Kontak Emp_Master
- Tabel Jatuhkan SQLite
Dalam SQLite, pernyataan DROP TABLE memungkinkan Anda untuk menghapus atau menghapus tabel dari database SQLite. Setelah tabel dijatuhkan, semua data yang dikandungnya akan dihapus secara permanen dari database. Semua indeks dan pemicu terkait juga dihapus. Jika ada batasan kunci asing yang diaktifkan pada tabel tersebut, maka batasan tersebut akan dihapus secara setara untuk setiap baris dalam tabel dan pemicu apa pun yang terkait dengan tabel juga akan dihapus.
Sintaks
DROP TABLE [ JIKA ADA ] table_name;
Contoh
DROP TABLE Department;Error:tidak ada tabel seperti itu:DepartmentDROP TABLE Company;sqlite> .tablesStudentInfo
Catatan: JIKA ADA, adalah klausa opsional. Jika ditentukan, pernyataan DROP TABLE tidak akan memunculkan kesalahan jika salah satu tabel tidak ada.
Juga, ada pernyataan SQLite Alter Table , yang akan kita pahami dalam beberapa bagian berikutnya dari artikel ini. Sekarang setelah kita membuat tabel, mari kita lihat cara menyisipkan, menghapus, dan mengubah data.
Tutorial SQLite:Operasi CRUD
- Kueri Sisipan SQLite
Setelah membuat tabel, perintah SQLite Insert Into dapat digunakan untuk membuat baris baru pada tabel yang ditentukan. Ada dua bentuk pernyataan sisipan SQLite yang bermakna. Formulir pertama menggunakan klausa VALUES untuk menentukan daftar nilai yang akan disisipkan.
Sintaks
INSERT INTO TABLE_NAME [(column1, column2, column3,...columnN)] NILAI (nilai1, nilai2, nilai3,...nilaiN);
Contoh
INSERT INTO StudentInfo ( ID, NAMA, USIA, ALAMAT, DEPARTMENTID, PHONE)VALUES (1,'Dean', 20, 'California', 2, '934*******');
Keluaran
PILIH *dari StudentInfo;ID NAMA USIA ALAMAT TELEPON DEPARTEMEN---------- ---------- ---------- ------ ---- ---------- ----------1 Dekan 20 California 2 934*******
Di sini, satu baris baru dibuat dan setiap nilai dicatat ke dalam kolomnya masing-masing. Perhatikan bahwa kedua daftar harus memiliki sama jumlah item. Di sini, daftar kolom adalah opsional. Kami juga dapat menyisipkan data ke tabel tanpa menentukan daftar kolom .
Contoh
MASUKKAN KE NILAI StudentInfo ( 2, 'SAM', 22, 'Texas', 2, '976*******');
Keluaran
PILIH *dari StudentInfo;ID NAMA USIA ALAMAT TELEPON DEPARTEMEN---------- ---------- ---------- ------ ---- ---------- ----------1 Dekan 20 California 2 934*******2 SAM 22 Texas 2 976*******
SQLite juga menawarkan fitur untuk menyisipkan beberapa baris dalam satu pernyataan INSERT. Sintaksnya seperti yang ditunjukkan di bawah ini.
Contoh
INSERT INTO StudentInfoVALUES (3,'John',23,'Norway',1,'923*******'),(4,'Mitch',22,'Houston',3,'934 *******');
Keluaran
Pilih *dari StudentInfo;1|Dekan|20|California|2|934*******2|SAM|22|Texas|2|976*******3|John|23| Norwegia|1|923*******4|Mitch|22|Houston|3|934*******
Seperti yang Anda lihat, format outputnya tidak terlalu mirip dengan yang sebelumnya. Jadi, bagaimana Anda mengubah format output di SQLite? Mari kita format outputnya agar hasil kita sedikit lebih mudah dibaca.
- Memformat
Anda dapat menggunakan .mode untuk mengubah mode keluaran. Contoh di atas menggunakan .mode list, yang menampilkan hasilnya sebagai daftar. Anda juga dapat menggunakan .headers pernyataan untuk menentukan apakah akan menampilkan header kolom atau tidak. Setelah membuat perubahan, Anda dapat melihat setelan menggunakan .show perintah.
Contoh
sqlite>.mode 'column'sqlite> .headers onsqlite> .showecho:offeqp:offexplain:autoheaders:onmode:columnnullvalue:""output:stdoutcolseparator:"|"rowseparator:"n"stats:offwidth:filename:StudentDetails .db
Keluaran
PILIH *FROM StudentInfo;ID NAMA ALAMAT USIA TELEPON DEPARTEMEN ---------- ---------- ---------- ------ ---- ---------- ----------1 Dekan 20 California 2 934*******2 SAM 22 Texas 2 976******* 3 John 23 Norwegia 1 923*******4 Mitch 22 Houston 3 934*******
- Kueri Pemilihan SQLite
Dalam SQLite, pernyataan Select digunakan untuk mengambil data dari tabel, yang mengembalikan data dalam bentuk tabel hasil. Tabel hasil ini juga disebut kumpulan hasil. Menggunakan pernyataan pilih SQLite, kami dapat melakukan perhitungan sederhana atau beberapa ekspresi berdasarkan persyaratan kami. Kami telah menggunakan pernyataan SELECT sebelumnya ketika kami memasukkan data.
Sintaks
PILIH [SEMUA | DISTINCT] hasil [FROM table-list][WHERE expr]
- BEDA – Saat kami menggunakan kata kunci yang berbeda dalam pernyataan pilih, ia hanya mengembalikan baris data yang berbeda.
- SEMUA – Jika kita menggunakan ALL kata kunci dalam pernyataan pilih, ia mengembalikan semua baris data meskipun diduplikasi.
- DARI daftar tabel – Ini adalah daftar tabel dari mana Anda ingin mendapatkan data.
- Ekspresi MANA – Ekspresi WHERE digunakan untuk mendefinisikan kondisi khusus kami untuk mendapatkan data yang diperlukan dari tabel.
Contoh1
PILIH ID, NAMA DARI StudentInfo MANA USIA <21;
Keluaran
NAMA ID---------- ----------1 Dekan
Contoh2
Pilih NAMA FROM StudentInfo WHERE DEPARTMENTID=(SELECT DeptID FROM DepartmentInfo WHERE DeptName ='Psychology');
Keluaran
//mengambil orang dari departemen yang idnya adalah 2NAME----------DeanSAM
- Kueri Pembaruan SQLite
Dalam SQLite, pernyataan UPDATE dapat digunakan untuk mengubah catatan yang ada dalam tabel. Klausa WHERE dari SQLite dapat digunakan untuk menentukan dengan tepat baris mana yang harus diperbarui. Anda dapat dengan mudah memperbarui semua baris, beberapa baris, atau tidak sama sekali, bergantung pada kondisi pemfilteran yang diterapkan oleh klausa WHERE.
Sintaks
PERBARUI nama_tabel SET kolom1 =nilai1, kolom2 =nilai2...., kolomN =nilaiN WHERE [kondisi];
Contoh
PERBARUI StudentInfo SET DEPARTMENTID =4 WHERE ID ='2';
Keluaran
PILIH *FROM StudentInfo;ID NAMA ALAMAT USIA TELEPON DEPARTMENTID---------- ---------- ---------- ------ ---- ------------ ----------1 Dekan 20 California 2 934*******2 SAM 22 Texas 4 976****** **3 John 23 Norway 1 923*******4 Mitch 22 Houston 3 934*******
- Kueri Hapus SQLite
Dalam SQLite, pernyataan DELETE dapat digunakan untuk menghapus record dari tabel. Anda dapat dengan mudah menghapus semua baris, beberapa baris, atau tidak sama sekali, bergantung pada kondisi pemfilteran yang diterapkan oleh klausa WHERE.
Contoh
HAPUS DARI DepartmentInfo WHERE DeptName ='Ilmu';
Keluaran
SELECT *FROM DepartmentInfo;DeptID DeptName---------- -----------1 Mathematics2 Psychology3 Sports4 Music
Jika Anda mencoba menghapus catatan yang direferensikan oleh kunci asing, Anda akan mendapatkan kesalahan. Anda harus menghapus catatan kunci asing terlebih dahulu, sebelum menghapus catatan kunci utama. Mari kita coba untuk menghapus ilmu departemen.
Contoh
DELETE FROM DepartmentInfo WHERE DeptName ='Music';Error:batasan FOREIGN KEY gagal
Jadi, kita perlu menghapus catatan kunci asing sebelum kita menghapus kunci utama.
HAPUS DARI StudentInfo WHERE DEPARTMENTID =4;sqlite> DELETE FROM DepartmentInfo WHERE DeptName ='Music';sqlite> SELECT *FROM DepartmentInfo;DeptID DeptName---------- -------- ----1 Matematika2 Psikologi3 Olahraga PILIH *FROM StudentInfo;NAMA NAMA USIA ALAMAT TELEPON DEPARTEMEN---------- ---------- ---------- -- -------- ------------ ----------1 Dekan 20 California 2 934*******3 John 23 Norwegia 1 923* ******4 Mitch 22 Houston 3 934******
Sekarang Anda tahu cara mengedit catatan di tabel Database SQLite. Lebih jauh lagi di blog tutorial SQLite ini, mari kita bahas klausa dan ketentuan berbeda yang paling sering Anda temui di SQLite.
Klausul/Kondisi SQLite
Sebelum memulai dengan klausa, berikut sintaks lengkap dari pernyataan SELECT di SQLite.
Sintaks
PILIH [SEMUA | DISTINCT] hasil [FROM table-list][WHERE expr][GROUP BY expr-list][HAVING expr][compound-op select]*[ORDER BY sort-expr-list][LIMIT integer [(OFFSET|,) integer ]]
Catatan:Saya telah memperbarui tabel StudentInfo dan DepartmentInfo seperti yang ditunjukkan di bawah ini.
//ID Tabel Siswa NAMA USIA ALAMAT TELEPON DEPARTEMEN ---------- ---------- ---------- ------- --- ------------ ----------1 Dekan 20 California 2 934*******3 John 23 Norwegia 1 923****** *4 Mitch 22 Houston 3 934*******2 SAM 22 Texas 4 976*******5 Johny 23 Norway 2 945*******6 Robin 23 Norway 2 UNKNOWN//Department DetailsDeptID DeptName---------- -----------1 Mathematics2 Psychology3 Sports4 Music5 Science
- SQLite WHERE
Dalam SQLite, klausa WHERE digunakan untuk memaksakan pembatasan pada pernyataan SELECT dengan mendefinisikan satu atau lebih kondisi untuk mendapatkan data yang diperlukan dari tabel dalam database. Jika kondisi yang ditentukan terpenuhi atau benar, ia mengembalikan nilai tertentu dari tabel. Seperti yang telah Anda lihat sebelumnya Klausa WHERE tidak hanya digunakan dalam pernyataan SELECT, tetapi juga digunakan dalam pernyataan UPDATE, DELETE, dll.
Contoh
PILIH NAMA DARI StudentInfo WHERE AGE =23;NAME----------JohnyRobin
Dalam SQLite, ada sejumlah operator relasional yang dapat digunakan dengan klausa WHERE.
- SQLite KELOMPOK OLEH
Dalam SQLite, klausa GROUP BY digunakan untuk menggabungkan data ke dalam satu baris di mana nilai dari satu atau lebih kolom tertentu diulang. Klausa ini digunakan dengan klausa WHERE dalam pernyataan SELECT dan mendahului klausa ORDER BY.
Sintaks
SELECT resultFROM [table-list]GROUP BY [expr-list]
PILIH NAMA, ALAMAT DARI StudentInfo GROUP BY NAME;NAME ADDRESS---------- ----------Dean CaliforniaJohn NorwayJohny NorwayMitch HoustonRobin NorwaySAM Texas
Perhatikan bahwa proses pengelompokan memiliki dua langkah. Pertama, ekspresi GROUP BY digunakan untuk mengatur baris tabel ke dalam grup yang berbeda. Setelah grup didefinisikan, pernyataan SELECT mendefinisikan bagaimana grup tersebut diratakan menjadi satu baris.
- SQLite ORDER OLEH
Umumnya, tabel SQLite menyimpan data dalam urutan yang tidak ditentukan dan akan mengembalikan catatan dalam urutan yang tidak ditentukan yang sama saat mengambil data menggunakan pernyataan pilih SQLite. Dalam kasus seperti itu, Anda dapat menggunakan klausa ORDER BY yang digunakan untuk mengurutkan catatan kolom baik dalam urutan menaik atau menurun. Pada contoh di bawah ini, saya telah mengelompokkan dan mengurutkan9 dalam urutan menurun) data berdasarkan alamatnya.
Sintaks
SELECT ekspresiFROM tables-list[WHERE conditions]ORDER BY column1, column2,... [ ASC | DESC ];
Contoh
PILIH ALAMAT, JUMLAH(ALAMAT) DARI StudentInfo GROUP BY ADDRESS ORDER BY ADDRESS DESC;ADDRESS COUNT(ADDRESS)---------- --------------Texas 1Norwegia 3Houston 1California 1
- SQLite MEMILIKI
Dalam SQLite, HAVING klausa identik dengan WHERE ayat. Klausa HAVING adalah kondisi lebih lanjut yang diterapkan setelah agregasi terjadi bersama dengan grup oleh dalam pernyataan pilih. Umumnya dalam SQLite, WHERE klausa digunakan untuk menerapkan kondisi ke elemen individual dalam tabel dan HAVING klausa digunakan untuk menambahkan kondisi filter berdasarkan grup yang dibuat oleh klausa Group By.
Contoh
PILIH ALAMAT, JUMLAH(ADDRESS) DARI StudentInfo GROUP BY ADDRESS MEMILIKI COUNT(*)>1;ADDRESS COUNT(ADDRESS)---------- ------------ --Norwegia 3
- Klausul Batas SQLite
Dalam SQLite, klausa LIMIT digunakan untuk menetapkan batas record yang dikembalikan oleh pernyataan pilih. Mari kita pertimbangkan sebuah contoh untuk memahami konsepnya.
Sintaks
SELECT expressionFROM tables-list[WHERE conditions]LIMIT number_rows OFFSET offset_value;
Contoh
PILIH NAMA, ALAMAT DARI StudentInfo LIMIT 4 OFFSET 2;NAME ADDRESS---------- ----------Mitch HoustonSAM TexasJohny NorwayRobin Norway
OFFSET adalah opsional dan menentukan berapa banyak baris yang harus dilewati di awal set hasil berdasarkan offset_value .
- SQLite DAN &ATAU
Dalam SQLite, operator AND &OR digunakan untuk melakukan beberapa kondisi pada pernyataan pilih, masukkan, perbarui, dan hapus berdasarkan persyaratan kami. Operator SQLite AND akan mengembalikan baris atau record yang memenuhi kondisi yang ditentukan dengan menggunakan operator AND.
Contoh1
PILIH NAMA DARI StudentInfo WHERE AGE =22 AND ADDRESS ='Texas';NAME----------SAM
Kondisi OR digunakan untuk mendefinisikan beberapa kondisi dalam pernyataan SQLite dan akan mengembalikan baris atau catatan dari pernyataan jika salah satu dari satu kondisi terpenuhi.
Contoh2
SELECT NAME FROM StudentInfo WHERE (AGE =22 AND ADDRESS ='Norway') OR ADDRESS ='Norway';NAME----------JohnJohnyRobin
- Operator GLOB SQLite
Dalam SQLite, operator GLOB digunakan untuk memeriksa apakah nilai string yang diberikan cocok dengan pola tertentu atau tidak. Jika nilai string cocok dengan nilai pola maka akan mengembalikan true dan mirip dengan operator LIKE. Selain itu, GLOB peka huruf besar/kecil.
Sintaks
SELECT * FROM table_nameWHERE column_name GLOB 'search-expression'
Contoh
PILIH *FROM StudentInfo WHERE NAME GLOB 'Joh*';NAMA NAMA USIA ALAMAT TELEPON DEPARTEMEN---------- ---------- --------- - ---------- ------------ ----------3 John 23 Norway 1 923*******5 Johny 23 Norway 2 945******
- Berbeda dengan SQLite
Dalam SQLite, kata kunci DISTINCT akan memindai kumpulan hasil dari pernyataan SELECT dan menghilangkan baris duplikat. Juga, nilai NULL dianggap sebagai duplikat jadi jika kita menggunakan klausa DISTINCT dengan kolom yang memiliki nilai NULL maka hanya akan menyimpan satu baris nilai NULL. Saat Anda menerapkan DISTINCT untuk beberapa kolom, pernyataan tersebut mengembalikan setiap kombinasi unik coulnm1 dan kolom2.
Contoh
PILIH USIA YANG BERBEDA DARI StudentInfo;AGE----------202322
- Operator SQLite IN
Dalam SQLite, operator IN digunakan untuk menentukan apakah nilai yang diberikan cocok dengan daftar nilai yang diberikan atau hasil yang dikembalikan oleh subquery.
Contoh
PILIH NAMA DARI StudentInfo WHERE ADDRESS IN ('Texas', 'Houston');NAME----------MitchSAM
- SQLite UNION &UNION SEMUA
Dalam SQLite, operator UNION digunakan untuk menggabungkan kumpulan hasil 2 atau lebih pernyataan SELECT dan menghapus baris duplikat antara berbagai pernyataan SELECT. Ingat bahwa pernyataan SELECT yang kita gunakan dengan operator UNION harus memiliki jumlah field yang sama dalam kumpulan hasil dengan tipe data yang serupa.
Sintaks
SELECT ekspresi1, ekspresi2,... tabel ekspresi_nFROM[kondisi WHERE]UNION / UNION ALLSELECT ekspresi1, ekspresi2,... tabel ekspresi_nFROM[kondisi WHERE];
Contoh
PILIH DEPARTMENTID DARI StudentInfo UNIONSELECT DeptId FROM DepartmentInfo ORDER OLEH DEPARTMENTID ASC;DEPARTMENTID------------12345
Operator UNION ALL digunakan untuk menggabungkan kumpulan hasil dari 2 atau lebih pernyataan SELECT dan itu akan mengembalikan semua baris termasuk duplikatnya.
Contoh
PILIH DEPARTMENTID DARI StudentInfo UNION SEMUA PILIH DeptId DARI DepartmentInfo ORDER OLEH DEPARTMENTID ASC;DEPARTMENTID------------11222233445
Dengan ini, kami telah membahas perintah paling dasar yang mungkin harus Anda gunakan saat bekerja dengan SQLite. Melanjutkan tutorial SQLite ini, mari kita lihat pernyataan join di SQLite.
Bergabung di SQLite
Di SQLite, Gabung digunakan untuk menggabungkan catatan dari dua atau lebih tabel dalam database dan mendapatkan catatan berdasarkan persyaratan kami. Berbagai jenis BERGABUNG yang tersedia di SQLite adalah:
- Gabung Dalam – INNER JOIN digunakan untuk menggabungkan dan mengembalikan hanya record yang cocok dari beberapa tabel berdasarkan kondisi yang ditentukan dalam pernyataan SQLite.
- Gabung Luar – SQLite Outer Join akan memilih baris yang cocok dari beberapa tabel sama seperti Inner Join dan beberapa baris lain di luar hubungan. Secara sederhana, kita dapat mengatakan SQLite OUTER JOIN adalah tambahan dari INNER JOIN. Secara umum, kami memiliki tiga jenis Outer Joins dalam standar SQL yaitu LEFT, RIGHT dan FULL Outer Joins tetapi SQLite hanya mendukung LEFT OUTER JOIN.
- Gabung Silang – Digunakan untuk mendapatkan produk Cartesian dari baris dengan mencocokkan setiap baris dari tabel pertama dengan setiap baris dari tabel kedua.
- Gabung Sendiri – Digunakan untuk menggabungkan tabel yang sama dengan dirinya sendiri. Untuk menggunakan Self Join, kita perlu membuat nama alias yang berbeda untuk tabel yang sama untuk melakukan operasi berdasarkan kebutuhan kita.
Konsepnya mirip dengan sistem database relasional lainnya seperti SQL. Jadi, untuk mengetahui lebih lanjut, Anda dapat merujuk ke artikel ini tentang SQL Joins.
Dengan ini, kita telah membahas perintah dasar SQLite. Konsep lanjutan tidak tercakup di sini. Jadi, nantikan artikel lainnya tentang konsep SQLite tingkat lanjut. Bahkan dengan semua fitur bagus yang ditawarkan SQLite, SQLite juga memiliki kelemahan tertentu.
Tutorial SQLite:Kekurangan SQLite
Di bawah ini adalah kerugian menggunakan SQLite:
- Ini tidak bekerja dengan baik di Arsitektur klien/server.
- Ukuran database SQLite dibatasi hingga 2 GB dalam banyak kasus.
- SQLite belum Menerapkan RIGHT OUTER JOIN dan FULL OUTER JOIN. Dengan SQLite, kita hanya dapat mengimplementasikan LEFT OUTER JOIN.
- Tampilan di SQLite bersifat hanya-baca. Kami tidak dapat menggunakan pernyataan DML (Sisipkan, Perbarui, dan Hapus) dengan Tampilan.
- Kami tidak dapat menggunakan pernyataan GRANT dan REVOKE dengan SQLite.
Dengan ini, kita mengakhiri Tutorial SQLite ini.
Jika Anda ingin mempelajari lebih lanjut tentang MySQL dan mengenal database relasional sumber terbuka ini, lihat Pelatihan Sertifikasi DBA MySQL kami yang dilengkapi dengan pelatihan langsung yang dipimpin instruktur dan pengalaman proyek kehidupan nyata. Pelatihan ini akan membantu Anda memahami MySQL secara mendalam dan membantu Anda menguasai subjek tersebut.
Ada pertanyaan untuk kami? Harap sebutkan di bagian komentar Tutorial SQLite ini dan saya akan menghubungi Anda kembali.