Čo sú to dátové typy PL / SQL?
Dátový typ je asociovaný s konkrétnym obmedzeniam formátu a rozsahu úložiska. V systéme Oracle je každej hodnote alebo konštante priradený dátový typ.
V zásade definuje, ako spoločnosť Oracle ukladá, spracováva a spracováva údaje počas ukladania a spracovania údajov.
Hlavný rozdiel medzi dátovými typmi PL / SQL a SQL je, že dátový typ SQL je obmedzený na stĺpec tabuľky, zatiaľ čo dátové typy PL / SQL sa používajú v blokoch PL / SQL. Viac o tom ďalej v tutoriále.
Nasleduje diagram rôznych dátových typov v PL / SQL
V tomto návode sa naučíte
- CHARACTER Dátový typ
- NUMBER dátový typ
- BOOLEAN dátový typ
- DÁTOVÝ typ údajov
- Údajový typ LOB
CHARACTER Typ údajov:
Tento dátový typ v zásade ukladá alfanumerické znaky vo formáte reťazca.
Doslovné hodnoty by mali byť vždy uzavreté v jednoduchých úvodzovkách, zatiaľ čo sú priraďované k dátovému typu CHARACTER.
Tento znakový dátový typ sa ďalej klasifikuje takto:
- Dátový typ CHAR (pevná veľkosť reťazca)
- VARCHAR2 Dátový typ (premenlivá veľkosť reťazca)
- VARCHAR Dátový typ
- NCHAR (natívna pevná veľkosť reťazca)
- NVARCHAR2 (veľkosť natívnej premennej reťazca)
- DLHÉ a DLHÉ SUROVÉ
Dátový typ | Popis | Syntax |
---|---|---|
CHAR | Tento dátový typ ukladá hodnotu reťazca a veľkosť reťazca je pevná v čase deklarovania premennej.
|
grade CHAR;manager CHAR (10):= 'guru99';Vysvetlenie syntaxe:
|
VARCHAR2 | Tento dátový typ ukladá reťazec, ale dĺžka reťazca nie je pevná.
|
manager VARCHAR2(10) := ‘guru99';Vysvetlenie syntaxe:
|
VARCHAR | Toto je synonymum pre dátový typ VARCHAR2.
|
manager VARCHAR(10) := ‘guru99';Vysvetlenie syntaxe:
|
NCHAR | Tento dátový typ je rovnaký ako dátový typ CHAR, ale znaková sada bude národnej znakovej sady.
|
native NCHAR(10);Vysvetlenie syntaxe:
|
NVARCHAR2 | Tento dátový typ je rovnaký ako dátový typ VARCHAR2, ale znaková sada bude mať národnú znakovú sadu.
|
Native var NVARCHAR2(10):='guru99';Vysvetlenie syntaxe:
|
DLHÉ a DLHÉ | Tento dátový typ sa používa na ukladanie veľkých textových alebo nespracovaných údajov do maximálnej veľkosti 2 GB.
|
Large_text LONG;Large_raw LONG RAW;Vysvetlenie syntaxe:
|
NUMBER dátový typ:
Tento dátový typ ukladá čísla s pevnou alebo pohyblivou rádovou čiarkou s presnosťou až 38 číslic. Tento dátový typ sa používa na prácu s poľami, ktoré budú obsahovať iba číselné údaje. Premennú je možné deklarovať buď s presnosťou a desatinnými číslicami, alebo bez tejto informácie. Pri priraďovaní pre tento dátový typ nemusia byť v úvodzovkách zahrnuté.
A NUMBER(8,2);B NUMBER(8);C NUMBER;
Vysvetlenie syntaxe:
- Vo vyššie uvedenom prvom vyhlásení sa deklaruje, že premenná „A“ má číselný údajový typ s celkovou presnosťou 8 a desatinnými číslicami 2.
- Druhé vyhlásenie deklaruje, že premenná „B“ má číselný údajový typ s celkovou presnosťou 8 a bez desatinných číslic.
- Tretie vyhlásenie je najobecnejšie a deklaruje, že premenná „C“ má číselný údajový typ bez obmedzenia presnosti alebo desatinných miest. Môže obsahovať až 38 číslic.
Typ údajov BOOLEAN:
Tento dátový typ ukladá logické hodnoty. Predstavuje buď TRUE, alebo FALSE a používa sa hlavne v podmienených príkazoch. Pri priraďovaní pre tento dátový typ nemusia byť v úvodzovkách zahrnuté.
Var1 BOOLEAN;
Vysvetlenie syntaxe:
- Vo vyššie uvedenom je premenná „Var1“ deklarovaná ako dátový typ BOOLEAN. Výsledok kódu bude na základe nastavenej podmienky buď pravdivý, alebo nepravdivý.
DÁTUM dátový typ:
Tento dátový typ ukladá hodnoty vo formáte dátumu, ako je dátum, mesiac a rok. Kedykoľvek je premenná definovaná s dátovým typom DATE spolu s dátumom, môže obsahovať časové informácie a predvolene je nastavená na 12:00:00, ak nie je uvedené. Pri priraďovaní k tomuto údajovému typu je potrebné uviesť hodnoty v úvodzovkách.
Štandardný formát času Oracle pre vstup a výstup je „DD-MON-YY“ a na úrovni relácie je opäť nastavený na NLS_PARAMETERS (NLS_DATE_FORMAT).
newyear DATE:='01-JAN-2015';current_date DATE:=SYSDATE;
Vysvetlenie syntaxe:
- Vo vyššie uvedenom, premenná, Novoročné 'je deklarovaná ako dátovým typom DATE a priradená hodnota Jan 1 st , 2015 dátum.
- Druhé vyhlásenie deklaruje premennú current_date ako dátový typ DATE a priradila jej hodnotu k aktuálnemu systémovému dátumu.
- Obe tieto premenné obsahujú časové informácie.
Typ údajov LOB:
Tento dátový typ sa používa hlavne na ukladanie a manipuláciu s veľkými blokmi neštruktúrovaných údajov, ako sú obrázky, multimediálne súbory atď. Spoločnosť Oracle uprednostňuje LOB namiesto dátového typu LONG, pretože je flexibilnejšia ako dátový typ LONG. Ďalej uvádzame niekoľko hlavných výhod LOB oproti DLHÝM dátovým typom.
- Počet stĺpcov v tabuľke s dátovým typom LONG je obmedzený na 1, zatiaľ čo tabuľka nemá žiadne obmedzenie týkajúce sa počtu stĺpcov s dátovým typom LOB.
- Nástroj dátového rozhrania akceptuje počas replikácie údajov dátový typ LOB tabuľky, ale vynechá LONG stĺpec tabuľky. Tieto DLHÉ stĺpce je potrebné replikovať manuálne.
- Veľkosť stĺpca LONG je 2 GB, zatiaľ čo LOB môže obsahovať až 128 TB.
- Spoločnosť Oracle neustále zdokonaľuje dátový typ LOB v každom svojom vydaní podľa moderných požiadaviek, zatiaľ čo dátový typ LONG je konštantný a nedostáva veľa aktualizácií.
Takže je vždy dobré použiť dátový typ LOB namiesto dátového typu LONG. Nasledujú rôzne typy údajov LOB. Môžu ukladať až do veľkosti 128 terabajtov.
- BLOB
- CLOB a NCLOB
- BFILE
Dátový typ | Popis | Syntax |
---|---|---|
BLOB |
Tento dátový typ ukladá údaje LOB do formátu binárneho súboru až do maximálnej veľkosti 128 TB. Toto neukladá údaje na základe podrobností znakovej sady, aby bolo možné ukladať neštruktúrované údaje, ako sú multimediálne objekty, obrázky atď. |
Binary_data BLOB; Vysvetlenie syntaxe:
|
CLOB a NCLOB |
Dátový typ CLOB ukladá údaje LOB do znakovej sady, zatiaľ čo NCLOB ukladá údaje do natívnej znakovej sady. Pretože tieto dátové typy využívajú úložisko založené na znakových sadách, nemôžu ukladať údaje ako multimédiá, obrázky atď., Ktoré nie je možné vložiť do znakového reťazca. Maximálna veľkosť týchto dátových typov je 128 TB. |
Charac_data CLOB; Vysvetlenie syntaxe:
|
BFILE |
|
Zhrnutie
Pokryli sme rôzne jednoduché typy údajov, ktoré sú k dispozícii v PL / SQL, spolu s ich syntaxou. O zložitých dátových druhoch sa dozvieme v ďalších témach.