SQLite Tipe Data: Int, Teks, Numerik, Riil, Blob
⚡ Ringkasan Cerdas
SQLite Tipe data bekerja berbeda dari basis data lainnya karena SQLite menggunakan tipe dinamisping, menyimpan nilai apa pun di kolom mana pun. Kelas penyimpanan, afinitas tipe, dan nama tipe yang dideklarasikan bersama-sama menentukan bagaimana setiap nilai disimpan secara fisik di disk.

Bagian-bagian di bawah ini menjelaskan bagaimana SQLite Materi ini membahas tipe data, dimulai dengan lima kelas penyimpanan, kemudian afinitas tipe dan aturan penugasannya, dan akhirnya contoh-contoh praktis penyimpanan bilangan bulat, bilangan riil, BLOB, Boolean, dan tanggal.
Tipe data di SQLite berbeda dengan yang ada di sistem manajemen basis data lainnya. Di SQLiteAnda dapat mendeklarasikan tipe data secara normal, tetapi Anda tetap dapat menyimpan nilai apa pun dalam tipe data apa pun.
SQLite Tipe data tidak tetap. Tidak ada tipe data yang baku; Anda dapat menyimpan tipe data apa pun yang Anda inginkan di kolom mana pun. Ini disebut tipe data dinamis.ping.
Pada tipe statis, seperti pada sistem manajemen basis data lainnya, jika Anda mendeklarasikan kolom dengan tipe data integer, Anda hanya dapat memasukkan nilai dengan tipe data integer. Namun, pada tipe dinamis, seperti pada SQLite, tipe kolom ditentukan oleh nilai yang dimasukkan, dan kemudian SQLite menyimpan nilai itu tergantung pada jenisnya.
SQLite Kelas Penyimpanan
In SQLite Terdapat berbagai metode penyimpanan yang berbeda tergantung pada jenis nilainya; berbagai metode penyimpanan ini disebut kelas penyimpanan. SQLite.
Berikut ini adalah kelas penyimpanan yang tersedia di SQLite:
- NULL – kelas penyimpanan ini digunakan untuk menyimpan nilai NULL apa pun.
- BILANGAN BULAT – setiap nilai numerik disimpan sebagai nilai bilangan bulat bertanda (dapat menyimpan nilai bilangan bulat positif dan negatif). Nilai INTEGER dalam SQLite disimpan dalam penyimpanan 1, 2, 3, 4, 6, atau 8 byte tergantung pada nilai nomornya.
- NYATA – Kelas penyimpanan ini digunakan untuk menyimpan nilai floating point, dan nilai tersebut disimpan dalam memori sebesar 8 byte.
- TEKS – menyimpan string teks. Ia juga mendukung berbagai encoding seperti UTF-8, UTF-16BE, atau UTF-16LE.
- Gumpalan – digunakan untuk menyimpan file berukuran besar, seperti gambar atau file teks. Nilainya disimpan sebagai larik byte, sama dengan nilai input.
SQLite Tipe Afinitas
Tipe afinitas adalah tipe data yang direkomendasikan untuk disimpan dalam sebuah kolom. Namun, Anda tetap dapat menyimpan tipe data apa pun sesuai keinginan; tipe-tipe ini hanya direkomendasikan, bukan diwajibkan.
Jenis-jenis ini diperkenalkan pada SQLite untuk memaksimalkan kompatibilitas antar SQLite dan lainnya sistem manajemen basis datas.
Kolom apa pun yang dideklarasikan dalam an SQLite Sebuah basis data diberi afinitas tipe tergantung pada tipe data yang dideklarasikan. Berikut adalah daftar afinitas tipe di SQLite:
- TEKS.
- NUMERIK.
- BILANGAN BULAT.
- NYATA.
- GUMPAL.
Begini caranya SQLite Menentukan afinitas kolom berdasarkan tipe data yang dideklarasikan:
- Afinitas INTEGER ditetapkan jika tipe yang dideklarasikan berisi string “INT”.
- Afinitas TEXT ditetapkan jika kolom tersebut berisi salah satu string berikut dalam tipe datanya: “TEXT”, “CHAR”, atau “CLOB”. Misalnya, tipe VARCHAR akan diberi afinitas TEXT.
- Afinitas BLOB ditetapkan jika kolom tidak memiliki tipe yang ditentukan atau tipe datanya adalah BLOB.
- Afinitas REAL ditetapkan jika tipe tersebut berisi salah satu string berikut: “DOUB”, “REAL”, atau “FLOAT”.
- Afinitas NUMERIK ditetapkan untuk tipe data lainnya.
Terdapat juga tabel di bawah ini yang menunjukkan beberapa contoh peta.ping antara SQLite tipe data dan afinitasnya ditentukan oleh aturan berikut:
Contoh Menyimpan Tipe Data di SQLite
Menyimpan angka dengan SQLite BILANGAN BULAT
Jika ada kolom yang memiliki tipe data yang mengandung kata "INT", maka kolom tersebut akan diberi afinitas tipe INTEGER. Kolom tersebut akan disimpan dalam kelas penyimpanan INTEGER.
Semua tipe data berikut ini diberi afinitas tipe INTEGER:
- INTEGER, INTEGER, INTEGER.
- INT2, INT4, INT8.
- TINYINT, SMALLINT, MEDIUMINT.
Tipe afinitas INTEGER dalam SQLite Dapat menyimpan bilangan bulat apa pun yang ditetapkan (positif atau negatif) mulai dari 1 byte hingga maksimum 8 byte.
Menyimpan angka dengan SQLite NYATA
Bilangan REAL adalah bilangan dengan presisi floating-point ganda. SQLite menyimpan bilangan riil sebagai larik 8-byte. Berikut adalah daftar tipe data di SQLite yang dapat Anda gunakan untuk menyimpan angka NYATA:
- NYATA.
- DOBEL.
- PRESISI GANDA.
- MENGAMBANG.
Menyimpan data berukuran besar dengan SQLite Gumpalan
Hanya ada satu cara untuk menyimpan file berukuran besar di dalam SQLite Basis data tersebut menggunakan tipe data BLOB. Tipe data ini digunakan untuk menyimpan file berukuran besar seperti gambar atau file jenis apa pun. File tersebut dikonversi menjadi larik byte dan kemudian disimpan dengan ukuran yang sama seperti file input.
Menyimpan SQLite Boolean
SQLite tidak memiliki kelas penyimpanan BOOLEAN terpisah. Sebagai gantinya, nilai BOOLEAN disimpan sebagai INTEGER, dengan 0 mewakili false dan 1 mewakili true.
Menyimpan SQLite tanggal dan waktu
Anda dapat mendeklarasikan tanggal atau waktu tanggal di SQLite menggunakan salah satu tipe data berikut:
- TANGGAL
- TANGGAL WAKTU
- URUTAN WAKTU
- WAKTU
Perlu dicatat bahwa tidak ada kelas penyimpanan DATE atau DATETIME terpisah di SQLiteSebaliknya, nilai apa pun yang dideklarasikan dengan salah satu tipe data sebelumnya disimpan dalam kelas penyimpanan yang bergantung pada format tanggal dari nilai yang dimasukkan, sebagai berikut:
- TEKS – jika Anda memasukkan nilai tanggal dalam format string ISO8601 (“YYYY-MM-DD HH:MM:SS.SSS”).
- NYATA – jika Anda memasukkan nilai tanggal sebagai nomor hari Julian, jumlah hari sejak tengah hari di Greenwich pada tanggal 24 November 4714 SM. Nilai tanggal tersebut kemudian disimpan sebagai REAL.
- BILANGAN BULAT - sebagai Unix Waktu, jumlah detik sejak 1970-01-01 00:00:00 UTC.

