Apa itu PL / SQL Datatypes?
Tipe data dikaitkan dengan format penyimpanan spesifik dan batasan jangkauan. Di Oracle, setiap nilai atau konstanta ditetapkan dengan tipe data.
Pada dasarnya, ini mendefinisikan bagaimana data disimpan, ditangani, dan diperlakukan oleh Oracle selama penyimpanan dan pemrosesan data.
Perbedaan utama antara tipe data PL / SQL dan SQL adalah, tipe data SQL terbatas pada kolom tabel sedangkan tipe data PL / SQL digunakan dalam blok PL / SQL. Lebih lanjut tentang ini nanti di tutorial.
Berikut adalah diagram Jenis Data yang berbeda di PL / SQL
Dalam tutorial ini, Anda akan belajar-
- KARAKTER Jenis Data
- NUMBER Jenis Data
- Jenis Data BOOLEAN
- Jenis Data DATE
- Jenis Data LOB
KARAKTER Tipe Data:
Tipe data ini pada dasarnya menyimpan karakter alfanumerik dalam format string.
Nilai literal harus selalu diapit tanda kutip tunggal saat menetapkannya ke tipe data CHARACTER.
Tipe data karakter ini selanjutnya diklasifikasikan sebagai berikut:
- Tipe data CHAR (ukuran string tetap)
- VARCHAR2 Jenis data (ukuran string variabel)
- VARCHAR Jenis data
- NCHAR (ukuran string tetap asli)
- NVARCHAR2 (ukuran string variabel asli)
- RAW PANJANG dan PANJANG
Tipe data | Deskripsi | Sintaksis |
---|---|---|
ARANG | Tipe data ini menyimpan nilai string, dan ukuran string ditetapkan pada saat mendeklarasikan variabel.
|
grade CHAR;manager CHAR (10):= 'guru99';Penjelasan Sintaks:
|
VARCHAR2 | Tipe data ini menyimpan string, tetapi panjang string tidak tetap.
|
manager VARCHAR2(10) := ‘guru99';Penjelasan Sintaks:
|
VARCHAR | Ini identik dengan tipe data VARCHAR2.
|
manager VARCHAR(10) := ‘guru99';Penjelasan Sintaks:
|
NCHAR | Tipe data ini sama dengan tipe data CHAR, tetapi himpunan karakternya akan set karakter nasional.
|
native NCHAR(10);Penjelasan Sintaks:
|
NVARCHAR2 | Tipe data ini sama dengan tipe data VARCHAR2, tetapi himpunan karakternya adalah himpunan karakter nasional.
|
Native var NVARCHAR2(10):='guru99';Penjelasan Sintaks:
|
PANJANG dan PANJANG | Tipe data ini digunakan untuk menyimpan teks besar atau data mentah hingga ukuran maksimal 2GB.
|
Large_text LONG;Large_raw LONG RAW;Penjelasan Sintaks:
|
NUMBER Tipe Data:
Tipe data ini menyimpan angka tetap atau floating point hingga presisi 38 digit. Tipe data ini digunakan untuk bekerja dengan bidang yang hanya berisi data angka. Variabel dapat dideklarasikan dengan presisi dan detail digit desimal atau tanpa informasi ini. Nilai tidak perlu diapit dalam tanda kutip saat menetapkan untuk tipe data ini.
A NUMBER(8,2);B NUMBER(8);C NUMBER;
Penjelasan Sintaks:
- Di atas, deklarasi pertama menyatakan variabel 'A' adalah tipe data angka dengan presisi total 8 dan angka desimal 2.
- Deklarasi kedua menyatakan variabel 'B' adalah tipe data angka dengan presisi total 8 dan tanpa digit desimal.
- Deklarasi ketiga adalah yang paling umum, menyatakan variabel 'C' adalah tipe data angka tanpa batasan presisi atau tempat desimal. Ini bisa memakan waktu hingga maksimal 38 digit.
Tipe Data BOOLEAN:
Tipe data ini menyimpan nilai logika. Ini mewakili TRUE atau FALSE dan terutama digunakan dalam pernyataan bersyarat. Nilai tidak perlu diapit dalam tanda kutip saat menetapkan untuk tipe data ini.
Var1 BOOLEAN;
Penjelasan Sintaks:
- Di atas, variabel 'Var1' dideklarasikan sebagai tipe data BOOLEAN. Output kode akan menjadi benar atau salah berdasarkan set kondisi.
Jenis Data DATE:
Tipe data ini menyimpan nilai dalam format tanggal, seperti tanggal, bulan, dan tahun. Kapanpun sebuah variabel didefinisikan dengan tipe data DATE bersama dengan tanggal itu dapat menyimpan informasi waktu dan secara default informasi waktu diatur ke 12:00:00 jika tidak ditentukan. Nilai harus diapit dalam tanda kutip saat menetapkan untuk tipe data ini.
Format waktu standar Oracle untuk input dan output adalah 'DD-MON-YY' dan sekali lagi disetel pada NLS_PARAMETERS (NLS_DATE_FORMAT) di tingkat sesi.
newyear DATE:='01-JAN-2015';current_date DATE:=SYSDATE;
Penjelasan Sintaks:
- Dalam contoh di atas, variabel 'newyear' dinyatakan sebagai tipe data DATE dan ditugaskan nilai 1 Jan st , tanggal 2015.
- Deklarasi kedua mendeklarasikan variabel current_date sebagai tipe data DATE dan menetapkan nilai dengan tanggal sistem saat ini.
- Kedua variabel ini menyimpan informasi waktu.
Tipe Data LOB:
Tipe data ini terutama digunakan untuk menyimpan dan memanipulasi blok besar data tidak terstruktur seperti gambar, file multimedia, dll. Oracle lebih memilih LOB daripada tipe data LONG karena lebih fleksibel daripada tipe data LONG. Di bawah ini adalah beberapa keuntungan utama LOB dibandingkan tipe data PANJANG.
- Jumlah kolom pada tabel dengan tipe data LONG dibatasi 1, sedangkan tabel tidak memiliki batasan jumlah kolom dengan tipe data LOB.
- Alat antarmuka data menerima tipe data LOB dari tabel selama replikasi data, tetapi alat ini menghilangkan kolom PANJANG dari tabel. Kolom LONG ini perlu direplikasi secara manual.
- Ukuran kolom PANJANG adalah 2GB, sedangkan LOB dapat menyimpan hingga 128 TB.
- Oracle terus meningkatkan tipe data LOB di setiap rilisnya sesuai dengan kebutuhan modern, sedangkan tipe data LONG bersifat konstan dan tidak mendapatkan banyak pembaruan.
Jadi, itu selalu baik untuk menggunakan tipe data LOB daripada tipe data LONG. Berikut adalah tipe data LOB yang berbeda. Mereka dapat menyimpan hingga ukuran 128 terabyte.
- GUMPAL
- CLOB dan NCLOB
- BFILE
Tipe data | Deskripsi | Sintaksis |
---|---|---|
GUMPAL |
Tipe data ini menyimpan data LOB dalam format file biner hingga ukuran maksimum 128 TB. Ini tidak menyimpan data berdasarkan detail set karakter, sehingga dapat menyimpan data yang tidak terstruktur seperti objek multimedia, gambar, dll. |
Binary_data BLOB; Penjelasan Sintaks:
|
CLOB dan NCLOB |
Tipe data CLOB menyimpan data LOB ke dalam kumpulan karakter, sedangkan NCLOB menyimpan data dalam kumpulan karakter asli. Karena tipe data ini menggunakan penyimpanan berbasis himpunan karakter, ini tidak dapat menyimpan data seperti multimedia, gambar, dll. Yang tidak dapat dimasukkan ke dalam string karakter. Ukuran maksimum tipe data ini adalah 128 TB. |
Charac_data CLOB; Penjelasan Sintaks:
|
BFILE |
|
Ringkasan
Kami telah membahas berbagai tipe data sederhana yang tersedia di PL / SQL bersama dengan sintaksnya. Kita akan belajar tentang tipe data kompleks dalam topik lebih lanjut.