Oracle PL/SQL tipovi podataka: Booleov, broj, datum [primjer]
Što su PL/SQL tipovi podataka?
Vrste podataka u PL/SQL koriste se za definiranje kako će podaci biti pohranjeni, kako će se njima rukovati i kako će ih tretirati Oracle tijekom pohrane i obrade podataka. Tipovi podataka povezani su s određenim formatom pohrane i ograničenjima raspona. U Oracle, svakoj vrijednosti ili konstanti dodijeljen je tip podataka.
Glavna razlika između PL/SQL i SQL tipovi podataka su, SQL tipovi podataka ograničeni su na stupac tablice, dok se PL/SQL tipovi podataka koriste u PL/SQL blokovi. Više o tome kasnije u vodiču.
Slijedi dijagram različitih Oracle PL/SQL tipovi podataka:

PL/SQL CHARACTER tip podataka
Ova vrsta podataka u osnovi pohranjuje alfanumeričke znakove u formatu niza.
Literalne vrijednosti uvijek bi trebale biti u jednostrukim navodnicima dok se dodjeljuju tipu podataka CHARACTER.
Ovaj karakterni tip podataka dalje je klasificiran na sljedeći način:
- CHAR Tip podataka (fiksna veličina niza)
- VARCHAR2 Tip podataka (varijabilna veličina niza)
- VARCHAR Tip podataka
- NCHAR (nativna fiksna veličina niza)
- NVARCHAR2 (prirodna varijabla veličine niza)
- DUGO i DUGO SIROVO
Tip podataka | Description | Sintaksa |
---|---|---|
TENK | Ovaj tip podataka pohranjuje vrijednost niza, a veličina niza je fiksna u trenutku deklariranja varijabla.
|
grade CHAR; manager CHAR (10):= 'guru99'; Objašnjenje sintakse:
|
VARCHAR2 | Ova vrsta podataka pohranjuje niz, ali duljina niza nije fiksna.
|
manager VARCHAR2(10) := ‘guru99'; Objašnjenje sintakse:
|
VARCHAR | Ovo je sinonim za tip podataka VARCHAR2.
|
manager VARCHAR(10) := ‘guru99'; Objašnjenje sintakse:
|
NCHAR | Ovaj tip podataka je isti kao tip podataka CHAR, ali će skup znakova biti nacionalni skup znakova.
|
native NCHAR(10); Objašnjenje sintakse:
|
NVARCHAR2 |
Ovaj tip podataka je isti kao tip podataka VARCHAR2, ali će skup znakova biti nacionalnog skupa znakova.
|
Native var NVARCHAR2(10):='guru99'; Objašnjenje sintakse:
|
LONG i LONGRAW | Ova vrsta podataka koristi se za pohranu velikog teksta ili neobrađenih podataka do maksimalne veličine od 2 GB.
|
Large_text LONG; Large_raw LONG RAW; Objašnjenje sintakse:
Bilješka: Korištenje vrste podataka LONG ne preporučuje Oracle. Umjesto toga treba dati prednost LOB tipu podataka. |
PL/SQL BROJ Tip podataka
Ova vrsta podataka pohranjuje brojeve s fiksnim ili pomičnim zarezom do 38 znamenki točnosti. Ovaj tip podataka koristi se za rad s poljima koja će sadržavati samo brojčane podatke. Varijabla se može deklarirati s detaljima o preciznosti i decimalnim znamenkama ili bez tih informacija. Vrijednosti ne moraju biti unutar navodnika tijekom dodjele za ovu vrstu podataka.
A NUMBER(8,2); B NUMBER(8); C NUMBER;
Objašnjenje sintakse:
- U gornjem, prva deklaracija izjavljuje da je varijabla 'A' tipa podataka broja s ukupnom preciznošću 8 i decimalnim znamenkama 2.
- Druga deklaracija izjavljuje da je varijabla 'B' tipa podataka broja s ukupnom preciznošću 8 i bez decimalnih znamenki.
- Treća deklaracija je najgeneričnija, deklarira da je varijabla 'C' brojčanog tipa podataka bez ograničenja u preciznosti ili decimalnim mjestima. Može imati najviše 38 znamenki.
PL/SQL BOOLEAN tip podataka
Ova vrsta podataka pohranjuje logičke vrijednosti. Oracle Booleov tip podataka predstavlja TRUE ili FALSE i uglavnom se koristi u uvjetnim izjavama. Vrijednosti ne moraju biti unutar navodnika tijekom dodjele za ovu vrstu podataka.
Var1 BOOLEAN;
Objašnjenje sintakse:
- U gornjem, varijabla 'Var1' je deklarirana kao BOOLEAN tip podataka. Izlaz koda bit će istinit ili lažan na temelju postavljenog uvjeta.
PL/SQL DATE tip podataka
Ova vrsta podataka pohranjuje vrijednosti u formatu datuma, kao datum, mjesec i godina. Kad god je varijabla definirana s tipom podataka DATE zajedno s datumom, može sadržavati informacije o vremenu, a prema zadanim postavkama informacije o vremenu postavljene su na 12:00:00 ako nisu navedene. Vrijednosti moraju biti unutar navodnika prilikom dodjele za ovu vrstu podataka.
Norma Oracle vremenski format za unos i izlaz je 'DD-MON-GG' i ponovno je postavljen na NLS_PARAMETERS (NLS_DATE_FORMAT) na razini sesije.
newyear DATE:='01-JAN-2015'; current_date DATE:=SYSDATE;
Objašnjenje sintakse:
- U gornjem, varijabla 'newyear' je deklarirana kao tip podataka DATE i dodijeljena joj je vrijednost 1. siječnjast, datum 2015.
- Druga deklaracija deklarira varijablu current_date kao tip podataka DATE i dodjeljuje vrijednost s trenutnim sistemskim datumom.
- Obje ove varijable sadrže informacije o vremenu.
PL/SQL LOB vrsta podataka
Ova vrsta podataka se uglavnom koristi za pohranjivanje i rukovanje velikim blokovima nestrukturiranih podataka poput slika, multimedijskih datoteka itd. Oracle preferira LOB umjesto tipa podataka LONG jer je fleksibilniji od tipa podataka LONG. Dolje je nekoliko glavnih prednosti LOB u odnosu na LONG tip podataka.
- Broj stupaca u tablici s tipom podataka LONG ograničen je na 1, dok tablica nema ograničenja na broj stupaca s tipom podataka LOB.
- Alat podatkovnog sučelja prihvaća LOB tip podataka tablice tijekom replikacije podataka, ali izostavlja DUGI stupac tablice. Ove DUGE stupce potrebno je replicirati ručno.
- Veličina stupca LONG je 2 GB, dok LOB može pohraniti do 128 TB.
- Oracle stalno poboljšava tip podataka LOB u svakom od svojih izdanja u skladu sa suvremenim zahtjevima, dok je tip podataka LONG konstantan i ne dobiva mnogo ažuriranja.
Dakle, uvijek je dobro koristiti tip podataka LOB umjesto tipa podataka LONG. Slijede različite LOB vrste podataka. Mogu pohraniti do veličine od 128 terabajta.
- BLOB
- CLOB i NCLOB
- BFILE
Tip podataka | Description | Sintaksa |
---|---|---|
BLOB | Ova vrsta podataka pohranjuje LOB podatke u binarnom formatu datoteke do maksimalne veličine od 128 TB. Ovo ne pohranjuje podatke temeljene na detaljima skupa znakova, tako da može pohraniti nestrukturirane podatke kao što su multimedijski objekti, slike itd. |
Binary_data BLOB; Objašnjenje sintakse:
|
CLOB i NCLOB | Tip podataka CLOB pohranjuje LOB podatke u skup znakova, dok NCLOB pohranjuje podatke u izvorni skup znakova. Budući da ove vrste podataka koriste pohranu temeljenu na skupu znakova, ne mogu pohraniti podatke poput multimedije, slika itd. koji se ne mogu staviti u niz znakova. Maksimalna veličina ovih vrsta podataka je 128 TB. |
Charac_data CLOB; Objašnjenje sintakse:
|
BFILE |
|
Rezime
Pokrili smo različite jednostavne tipove podataka koji su dostupni u PL / SQL zajedno s njihovom sintaksom. O složenim tipovima podataka naučit ćemo u daljnjim temama.