Mikä on PL / SQL-tietotyypit?
Tietotyyppi liittyy tiettyyn tallennusmuotoon ja aluerajoituksiin. Oraclessa kukin arvo tai vakio määritetään tietotyypin kanssa.
Periaatteessa se määrittelee, miten Oracle tallentaa, käsittelee ja käsittelee tietoja tietojen tallennuksen ja käsittelyn aikana.
Suurin ero PL / SQL- ja SQL-tietotyyppien välillä on, että SQL-tietotyyppi on rajoitettu taulukkosarakkeeseen, kun taas PL / SQL-tietotyyppejä käytetään PL / SQL-lohkoissa. Lisätietoja tästä myöhemmin opetusohjelmassa.
Seuraava on kaavio erilaisista tietotyypeistä PL / SQL: ssä
Tässä opetusohjelmassa opit-
- CHARACTER-tietotyyppi
- NUMBER tietotyyppi
- BOOLEN tietotyyppi
- DATE-tietotyyppi
- LOB-tietotyyppi
CHARACTER-tietotyyppi:
Tämä tietotyyppi tallentaa pohjimmiltaan aakkosnumeeriset merkit merkkijonomuodossa.
Kirjaimelliset arvot tulee aina liittää lainausmerkeihin samalla, kun ne määritetään CHARACTER-tietotyypille.
Tämä merkkitietotyyppi luokitellaan edelleen seuraavasti:
- CHAR-tietotyyppi (kiinteä merkkijonokoko)
- VARCHAR2-tietotyyppi (vaihteleva merkkikoko)
- VARCHAR-tietotyyppi
- NCHAR (alkuperäinen kiinteä merkkijonokoko)
- NVARCHAR2 (natiivimuuttujan merkkijonokoko)
- PITKÄ ja PITKÄ RAAKA
Tietotyyppi | Kuvaus | Syntaksi |
---|---|---|
HIILTYÄ | Tämä tietotyyppi tallentaa merkkijonon arvon ja merkkijonon koko on kiinteä muuttujan ilmoituksen yhteydessä.
|
grade CHAR;manager CHAR (10):= 'guru99';Syntaksi Selitys:
|
VARCHAR2 | Tämä tietotyyppi tallentaa merkkijonon, mutta merkkijonon pituus ei ole kiinteä.
|
manager VARCHAR2(10) := ‘guru99';Syntaksi Selitys:
|
VARCHAR | Tämä on synonyymi VARCHAR2-tietotyypille.
|
manager VARCHAR(10) := ‘guru99';Syntaksi Selitys:
|
NCHAR | Tämä tietotyyppi on sama kuin CHAR-tietotyyppi, mutta kansallisen merkistöjoukon merkistö tulee.
|
native NCHAR(10);Syntaksi Selitys:
|
NVARCHAR2 | Tämä tietotyyppi on sama kuin VARCHAR2-tietotyyppi, mutta merkistö on kansallista merkistöä.
|
Native var NVARCHAR2(10):='guru99';Syntaksi Selitys:
|
PITKÄ ja PITKÄ | Tätä tietotyyppiä käytetään suurten teksti- tai raakatietojen tallentamiseen enintään 2 Gt: n kokoon asti.
|
Large_text LONG;Large_raw LONG RAW;Syntaksi Selitys:
|
NUMBER tietotyyppi:
Tämä tietotyyppi tallentaa kiinteän tai liukuluvun numerot jopa 38 numeron tarkkuudella. Tätä tietotyyppiä käytetään työskentelemään kenttien kanssa, jotka sisältävät vain numerotietoja. Muuttuja voidaan ilmoittaa joko tarkkuudella ja desimaaliluvulla tai ilman näitä tietoja. Arvojen ei tarvitse olla lainausmerkeissä, kun ne määritetään tälle tietotyypille.
A NUMBER(8,2);B NUMBER(8);C NUMBER;
Syntaksi Selitys:
- Edellä mainitussa ensimmäisessä ilmoituksessa ilmoitetaan, että muuttuja 'A' on numerotietotyyppiä täsmällisellä 8 ja desimaaliluvulla 2.
- Toinen ilmoitus ilmoittaa, että muuttuja 'B' on numerotietotyyppiä, täsmällisyys 8 eikä desimaalilukuja.
- Kolmas ilmoitus on yleisin, ilmoittaa, että muuttuja 'C' on numerotietotyyppiä ilman tarkkuus- tai desimaalirajoituksia. Se voi viedä enintään 38 numeroa.
BOOLEAN tietotyyppi:
Tämä tietotyyppi tallentaa loogiset arvot. Se edustaa joko TOSI tai EPÄTOSI ja sitä käytetään pääasiassa ehdollisissa lauseissa. Arvojen ei tarvitse olla lainausmerkeissä, kun ne määritetään tälle tietotyypille.
Var1 BOOLEAN;
Syntaksi Selitys:
- Edellä mainitaan muuttuja 'Var1' BOOLEAN-tietotyypiksi. Koodin lähtö on joko tosi tai väärä asetetun ehdon perusteella.
DATE-tietotyyppi:
Tämä tietotyyppi tallentaa arvot päivämäärämuodossa päivämääränä, kuukautena ja vuotena. Aina kun muuttujalle määritetään DATE-tietotyyppi ja päivämäärä, se voi sisältää aikatiedot ja oletusasetuksena aikatiedoksi on asetettu 12:00:00, ellei sitä määritetä. Arvot on liitettävä lainausmerkkeihin, kun ne määritetään tälle tietotyypille.
Vakio Oracle-aikaformaatti syötteille ja lähdöille on 'DD-MON-YY', ja se asetetaan jälleen istuntotasolla NLS_PARAMETERS (NLS_DATE_FORMAT).
newyear DATE:='01-JAN-2015';current_date DATE:=SYSDATE;
Syntaksi Selitys:
- Yllä muuttujaa 'newyear' julistetaan DATE tietotyyppi ja annetaan arvo Tammikuun 1. päivästä st , 2015 mennessä.
- Toinen ilmoitus ilmoittaa muuttujan current_date DATE-tietotyypiksi ja sille määritetään arvo nykyisen järjestelmän päivämäärän kanssa.
- Molemmat muuttujat sisältävät aikatiedot.
LOB-tietotyyppi:
Tätä tietotyyppiä käytetään pääasiassa suurten strukturoimattomien tietojen lohkojen, kuten kuvien, multimediatiedostojen jne., Tallentamiseen ja käsittelyyn. Oracle mieluummin käyttää LOB-tiedostoa LONG-tietotyypin sijaan, koska se on joustavampi kuin LONG-tietotyyppi. Alla on muutama LOB: n tärkein etu LONG-tietotyyppiin nähden.
- LONG-tietotyyppisen taulukon sarakkeiden määrä on rajoitettu yhteen, kun taas taulukossa ei ole rajoituksia LOB-tietotyyppisten sarakkeiden määrälle.
- Tietoliitäntätyökalu hyväksyy taulukon LOB-tietotyypin tietojen replikoinnin aikana, mutta se jättää taulun PITKÄ sarake pois. Nämä LONG-sarakkeet on kopioitava manuaalisesti.
- LONG-sarakkeen koko on 2 Gt, kun taas LOB voi tallentaa jopa 128 Tt.
- Oracle parantaa jatkuvasti jokaisen julkaisun LOB-tietotyyppiä nykyaikaisen vaatimuksen mukaisesti, kun taas LONG-tietotyyppi on vakio eikä saa paljon päivityksiä.
Joten on aina hyvä käyttää LOB-tietotyyppiä LONG-tietotyypin sijaan. Seuraavassa on erilaisia LOB-tietotyyppejä. Ne voivat tallentaa 128 teratavua.
- MÖYKKY
- CLOB ja NCLOB
- BFILE
Tietotyyppi | Kuvaus | Syntaksi |
---|---|---|
MÖYKKY |
Tämä tietotyyppi tallentaa LOB-tiedot binaaritiedostomuodossa enintään 128 Tt: n kokoon. Tämä ei tallenna merkistöjoukon yksityiskohtiin perustuvaa dataa, jotta se voi tallentaa strukturoimattomat tiedot, kuten multimediaobjektit, kuvat jne. |
Binary_data BLOB; Syntaksi Selitys:
|
CLOB ja NCLOB |
CLOB-tietotyyppi tallentaa LOB-tiedot merkistöön, kun taas NCLOB tallentaa tiedot alkuperäiseen merkistöön. Koska nämä tietotyypit käyttävät merkistöpohjaista tallennustilaa, ne eivät voi tallentaa tietoja, kuten multimediaa, kuvia jne., Joita ei voida laittaa merkkijonoon. Näiden tietotyyppien enimmäiskoko on 128 Tt. |
Charac_data CLOB; Syntaksi Selitys:
|
BFILE |
|
Yhteenveto
Olemme käsitelleet erilaisia yksinkertaisia tietotyyppejä, jotka ovat saatavana PL / SQL: ssä, sekä niiden syntaksin. Opimme monimutkaisista tietotyypeistä muista aiheista.