Oracle PL/SQL adattípusok: logikai érték, szám, dátum [példa]
Mi az a PL/SQL adattípus?
Adattípusok PL/SQL-ben az adatok tárolásának, kezelésének és kezelésének meghatározására szolgál Oracle az adatok tárolása és feldolgozása során. Az adattípusok az adott tárolási formátumhoz és tartománykorlátokhoz vannak társítva. Ban ben Oracle, minden értékhez vagy állandóhoz adattípus tartozik.
A fő különbség a PL/SQL és SQL az adattípusok, az SQL adattípusok tábla oszlopra korlátozódnak, míg a PL/SQL adattípusok használatosak PL/SQL blokkok. Erről bővebben később az oktatóanyagban.
Az alábbiakban a különböző diagramok láthatók Oracle PL/SQL adattípusok:

PL/SQL KARAKTER Adattípus
Ez az adattípus alapvetően karakterlánc-formátumban tárolja az alfanumerikus karaktereket.
A literális értékeket mindig idézőjelbe kell tenni, miközben CHARACTER adattípushoz rendeli őket.
Ez a karakter adattípus a következőképpen osztályozható:
- CHAR Adattípus (rögzített karakterláncméret)
- VARCHAR2 Adattípus (változó karakterláncméret)
- VARCHAR Adattípus
- NCHAR (natív rögzített karakterláncméret)
- NVARCHAR2 (natív változó karakterláncméret)
- HOSSZÚ és HOSSZÚ RAW
Adattípus | Leírás | Szintaxis |
---|---|---|
CHAR | Ez az adattípus tárolja a karakterlánc értékét, és a karakterlánc mérete a deklaráció időpontjában rögzített változó.
|
grade CHAR; manager CHAR (10):= 'guru99'; Szintaxis magyarázata:
|
VARCHAR2 | Ez az adattípus tárolja a karakterláncot, de a karakterlánc hossza nincs rögzítve.
|
manager VARCHAR2(10) := ‘guru99'; Szintaxis magyarázata:
|
VARCHAR | Ez a VARCHAR2 adattípus szinonimája.
|
manager VARCHAR(10) := ‘guru99'; Szintaxis magyarázata:
|
NCHAR | Ez az adattípus megegyezik a CHAR adattípussal, de a nemzeti karakterkészlet karakterkészlete lesz.
|
native NCHAR(10); Szintaxis magyarázata:
|
NVARCHAR2 |
Ez az adattípus megegyezik a VARCHAR2 adattípussal, de a karakterkészlet nemzeti karakterkészletből áll.
|
Native var NVARCHAR2(10):='guru99'; Szintaxis magyarázata:
|
HOSSZÚ és HOSSZÚ | Ez az adattípus nagy szöveg vagy nyers adatok tárolására szolgál, legfeljebb 2 GB-os méretig.
|
Large_text LONG; Large_raw LONG RAW; Szintaxis magyarázata:
Jegyzet: A LONG adattípus használatát nem javasolja Oracle. Ehelyett a LOB adattípust kell előnyben részesíteni. |
PL/SQL SZÁM Adattípus
Ez az adattípus fix vagy lebegőpontos számokat tárol 38 számjegy pontosságig. Ezt az adattípust olyan mezők kezelésére használják, amelyek csak számadatokat tartalmaznak. A változó deklarálható precíziós és decimális számjegyekkel, vagy ezen információk nélkül is. Az értékeket nem kell idézőjelek közé tenni az adattípus hozzárendelése során.
A NUMBER(8,2); B NUMBER(8); C NUMBER;
Szintaxis magyarázata:
- A fentiekben az első deklaráció deklarálja, hogy az 'A' változó számadattípusú, teljes pontossággal 8, decimális számjegyekkel pedig 2.
- A második deklaráció deklarálja, hogy a „B” változó számadattípusú, teljes pontossággal 8, és nem tartalmaz tizedesjegyeket.
- A harmadik deklaráció a legáltalánosabb, a 'C' változó számadattípusú, pontosság vagy tizedesjegyek korlátozása nélkül. Maximum 38 számjegyből állhat.
PL/SQL BOOLEAN adattípus
Ez az adattípus tárolja a logikai értékeket. Oracle A logikai adattípus IGAZ vagy HAMIS, és főként feltételes utasításokban használatos. Az értékeket nem kell idézőjelek közé tenni az adattípus hozzárendelése során.
Var1 BOOLEAN;
Szintaxis magyarázata:
- A fentiekben a 'Var1' változó BOOLEAN adattípusként van deklarálva. A kód kimenete a feltételkészlettől függően igaz vagy hamis lesz.
PL/SQL DÁTUM Adattípus
Ez az adattípus dátumformátumban, dátumként, hónapként és évként tárolja az értékeket. Amikor egy változót a dátummal együtt DATE adattípussal definiálnak, az időinformációkat tartalmazhat, és alapértelmezés szerint az időinformáció 12:00:00, ha nincs megadva. Az értékeket idézőjelbe kell zárni, amikor ehhez az adattípushoz rendel hozzá.
A szabvány Oracle A bemeneti és kimeneti időformátum 'DD-MON-YY', és a munkamenet szintjén ismét NLS_PARAMETERS (NLS_DATE_FORMAT) van beállítva.
newyear DATE:='01-JAN-2015'; current_date DATE:=SYSDATE;
Szintaxis magyarázata:
- A fentiekben a 'newyear' változó DÁTUM adattípusként van deklarálva, és január 1-i értékkel van rendelve.st, 2015-ös dátum.
- A második deklaráció a current_date változót DÁTUM adattípusként deklarálja, és az értéket az aktuális rendszerdátummal rendeli hozzá.
- Mindkét változó tartalmazza az időinformációt.
PL/SQL LOB adattípus
Ezt az adattípust főként strukturálatlan adattömbök, például képek, multimédiás fájlok stb. tárolására és kezelésére használják. Oracle a LOB-ot részesíti előnyben a LONG adattípus helyett, mivel rugalmasabb, mint a LONG adattípus. Az alábbiakban bemutatjuk a LOB néhány fő előnyét a LONG adattípussal szemben.
- A LONG adattípusú táblákban az oszlopok száma 1-re van korlátozva, míg a tábláknak nincs korlátozása a LOB adattípusú oszlopok számára.
- Az adatinterfész eszköz elfogadja a tábla LOB adattípusát az adatreplikáció során, de kihagyja a tábla LONG oszlopát. Ezeket a LONG oszlopokat manuálisan kell replikálni.
- A LONG oszlop mérete 2 GB, míg a LOB 128 TB-ig képes tárolni.
- Oracle folyamatosan fejleszti a LOB adattípust minden kiadásában a modern igényeknek megfelelően, míg a LONG adattípus állandó és nem kap sok frissítést.
Ezért mindig jó a LOB adattípus használata a LONG adattípus helyett. Az alábbiakban a különböző LOB adattípusok láthatók. Legfeljebb 128 terabájtot tudnak tárolni.
- FOLT
- CLOB és NCLOB
- BFILE
Adattípus | Leírás | Szintaxis |
---|---|---|
FOLT | Ez az adattípus a LOB adatokat bináris fájlformátumban tárolja, legfeljebb 128 TB méretig. Ez nem tárol adatokat a karakterkészlet részletei alapján, így képes tárolni a strukturálatlan adatokat, például multimédiás objektumokat, képeket stb. |
Binary_data BLOB; Szintaxis magyarázata:
|
CLOB és NCLOB | A CLOB adattípus a LOB adatokat a karakterkészletben tárolja, míg az NCLOB a natív karakterkészletben tárolja az adatokat. Mivel ezek az adattípusok karakterkészlet alapú tárolást használnak, nem tárolhatnak olyan adatokat, mint például a multimédia, képek stb., amelyeket nem lehet karaktersorozatba helyezni. Ezen adattípusok maximális mérete 128 TB. |
Charac_data CLOB; Szintaxis magyarázata:
|
BFILE |
|
Összegzésként
Áttekintettük a különböző egyszerű adattípusokat, amelyek elérhetők PL / SQL szintaxisukkal együtt. Az összetett adattípusokról további témakörökben fogunk tanulni.