Орацле ПЛ / СКЛ типови података: логички, број, датум (пример)

Преглед садржаја:

Anonim

Шта су типови података ПЛ / СКЛ?

Тип података повезан је са одређеним форматом меморије и ограничењима опсега. У Орацле-у је свакој вредности или константи додељен тип података.

У основи дефинише начин на који Орацле чува, обрађује и обрађује податке током складиштења и обраде података.

Главна разлика између ПЛ / СКЛ и СКЛ типова података је што су СКЛ типови података ограничени на колону табеле док се ПЛ / СКЛ типови података користе у ПЛ / СКЛ блоковима. Више о томе касније у водичу.

Следи дијаграм различитих типова података у ПЛ / СКЛ

У овом упутству ћете научити-

  • КАРАКТЕР Тип података
  • БРОЈ Тип података
  • БООЛЕАН тип података
  • ДАТУМ Тип података
  • ЛОБ тип података

КАРАКТЕР Тип података:

Овај тип података у основи чува алфанумеричке знакове у формату низа.

Вредности буквала увек треба да буду затворене у појединачне наводнике док их додељујете типу података ЦХАРАЦТЕР.

Овај тип података о знаковима даље је класификован на следећи начин:

  • ЦХАР тип података (фиксна величина низа)
  • ВАРЦХАР2 Тип података (променљива величина низа)
  • ВАРЦХАР Тип података
  • НЦХАР (изворна фиксна величина низа)
  • НВАРЦХАР2 (нативна променљива величина низа)
  • ДУГО И ДУГО СИРОВО
Тип података Опис Синтакса
ЦХАР Овај тип података чува вредност низа, а величина низа је фиксна у тренутку декларисања променљиве.
  • Орацле би био празно подложен променљивом ако променљива не заузима целу величину која је за њу декларисана, па ће Орацле доделити меморију за декларисану величину чак и ако је променљива не заузима у потпуности.
  • Ограничење величине за овај тип података је 1-2000 бајтова.
  • Тип података ЦХАР прикладније је користити тамо где ће се руковати увек утврђеном величином података.
grade CHAR;manager CHAR (10):= 'guru99';
Објашњење синтаксе:
  • Прва изјава декларације декларисала је променљиву „оцена“ типа података ЦХАР са максималном величином од 1 бајта (подразумевана вредност).
  • Друга изјава декларације декларисала је променљиву „менаџер“ типа података ЦХАР са максималном величином од 10 и доделила вредност „гуру99“ која је од 6 бајтова. Орацле ће у овом случају доделити меморију од 10 бајтова, а не 6 бајтова.
ВАРЦХАР2 Овај тип података чува низ, али дужина низа није фиксна.
  • Ограничење величине за овај тип података је 1-4000 бајтова за величину колоне табеле и 1-32767 бајтова за променљиве.
  • Величина је дефинисана за сваку променљиву у тренутку декларације променљиве.
  • Али Орацле ће доделити меморију тек након што је променљива дефинисана, тј. Орацле ће узети у обзир само стварну дужину низа који је ускладиштен у променљивој за доделу меморије, а не величину која је дата за променљиву у делу декларације.
  • Увек је добро користити ВАРЦХАР2 уместо типа података ЦХАР да бисте оптимизовали коришћење меморије.
manager VARCHAR2(10) := ‘guru99';
Објашњење синтаксе:
  • Горња изјава декларације прогласила је променљиву „управитељ“ типа података ВАРЦХАР2 са максималном величином од 10 и доделила вредност „гуру99“ која је од 6 бајтова. Орацле ће у овом случају доделити меморију од само 6 бајтова.
ВАРЦХАР Ово је синоним за тип података ВАРЦХАР2.
  • Увек је добра пракса да користите ВАРЦХАР2 уместо ВАРЦХАР да бисте избегли промене у понашању.
manager VARCHAR(10) := ‘guru99';
Објашњење синтаксе:
  • Горња изјава декларације прогласила је променљиву „менаџер“ типа података ВАРЦХАР са максималном величином од 10 и доделила вредност „гуру99“ која је од 6 бајтова. Орацле ће у овом случају доделити меморију од само 6 бајтова. (Слично ВАРЦХАР2)
НЦХАР Овај тип података је исти као тип података ЦХАР, али скуп знакова ће бити национални скуп знакова.
  • Овај скуп знакова може се дефинисати за сесију помоћу НЛС_ПАРАМЕТЕРС.
  • Скуп знакова може бити УТФ16 или УТФ8.
  • Ограничење величине је 1-2000 бајтова.
native NCHAR(10);
Објашњење синтаксе:
  • Горња изјава декларације проглашава променљиву „изворно“ типа података НЦХАР са максималном величином од 10.
  • Дужина ове променљиве зависи од (броја дужина) по бајту како је дефинисано у скупу знакова.
НВАРЦХАР2 Овај тип података је исти као тип података ВАРЦХАР2, али скуп знакова биће националног скупа знакова.
  • Овај скуп знакова може се дефинисати за сесију помоћу НЛС_ПАРАМЕТЕРС.
  • Скуп знакова може бити УТФ16 или УТФ8.
  • Ограничење величине је 1-4000 бајтова.
Native var NVARCHAR2(10):='guru99';
Објашњење синтаксе:
  • Горња изјава декларације декларише променљиву 'Нативе_вар' типа података НВАРЦХАР2 са максималном величином од 10.
ДУГА и ДУГА Овај тип података користи се за чување великог текста или сирових података до максималне величине 2 ГБ.
  • Они се углавном користе у речнику података.
  • ЛОНГ тип података користи се за чување података скупа знакова, док ЛОНГ РАВ служи за чување података у бинарном формату.
  • Тип података ЛОНГ РАВ прихвата медијске објекте, слике итд., Док ЛОНГ ради само на подацима који се могу сачувати помоћу скупа знакова.
Large_text LONG;Large_raw LONG RAW;
Објашњење синтаксе:
  • Горња изјава декларације декларише променљиву 'Ларге_тект' ЛОНГ типа података и 'Ларге_рав' ЛОНГ РАВ типа података.
Напомена: Орацле не препоручује употребу ЛОНГ типа података. Уместо тога, треба дати предност типу података ЛОБ.

НУМБЕР тип података:

Овај тип података чува фиксне бројеве или бројеве с помичном тачком до прецизности до 38 цифара. Овај тип података користи се за рад са пољима која ће садржати само бројевне податке. Променљива се може декларисати са прецизношћу и децималним цифрама или без ових информација. Вредности не морају бити затворене у наводнике док додељујете овом типу података.

A NUMBER(8,2);B NUMBER(8);C NUMBER;

Објашњење синтаксе:

  • У претходном делу, прва декларација декларише променљиву „А“ типа броја са укупном прецизношћу 8 и децималним цифрама 2.
  • Друга декларација изјављује да је променљива „Б“ бројачког типа са укупном прецизношћу 8 и без децималних цифара.
  • Трећа декларација је најопштија, декларише променљиву 'Ц' бројевног типа података без ограничења у прецизности или децималним местима. То може трајати до највише 38 цифара.

БООЛЕАН тип података:

Овај тип података чува логичке вредности. Представља тачно или нетачно и углавном се користи у условним исказима. Вредности не морају бити затворене у наводнике док додељујете овом типу података.

Var1 BOOLEAN;

Објашњење синтаксе:

  • У горе наведеном, променљива 'Вар1' је декларисана као БООЛЕАН тип података. Излаз кода ће бити тачан или нетачан на основу постављеног услова.

ДАТУМ Тип података:

Овај тип података чува вредности у формату датума, као датум, месец и годину. Кад год је променљива дефинисана типом података ДАТУМ заједно са датумом, може садржати информације о времену и подразумевано је подешена на 12:00:00 ако није наведена. Вредности је потребно приложити у наводнике док додељујете овом типу података.

Стандардни Орацле формат времена за улаз и излаз је 'ДД-МОН-ИИ' и поново је постављен на НЛС_ПАРАМЕТЕРС (НЛС_ДАТЕ_ФОРМАТ) на нивоу сесије.

newyear DATE:='01-JAN-2015';current_date DATE:=SYSDATE;

Објашњење синтаксе:

  • У горе наведеном, променљива „невиеар“ је декларисана као ДАТУМ типа података и додељена јој је вредност 1. јануара 2015. године.
  • Друга декларација декларише променљиву цуррент_дате као тип података ДАТЕ и додељује јој вредност са тренутним системским датумом.
  • Обе ове променљиве садрже информације о времену.

ЛОБ тип података:

Овај тип података се углавном користи за складиштење и манипулацију великим блоковима неструктурираних података попут слика, мултимедијалних датотека итд. Орацле преферира ЛОБ уместо ЛОНГ типа података јер је флексибилнији од ЛОНГ типа података. Испод је неколико главних предности ЛОБ-а у односу на ЛОНГ тип података.

  • Број колона у табели са ЛОНГ типом података ограничен је на 1, док табела нема ограничење на број колона са ЛОБ типом података.
  • Алат за интерфејс података прихвата ЛОБ тип података табеле током репликације података, али изоставља ЛОНГ ступац табеле. Ове ЛОНГ колоне треба ручно копирати.
  • Величина ЛОНГ колоне је 2 ГБ, док ЛОБ може да ускладишти до 128 ТБ.
  • Орацле непрестано побољшава тип података ЛОБ у сваком издању у складу са савременим захтевима, док је тип података ЛОНГ константан и не добија много ажурирања.

Дакле, увек је добро користити тип података ЛОБ уместо тип података ЛОНГ. Следе различити типови података ЛОБ. Могу да ускладиште до величине 128 терабајта.

  1. БЛОБ
  2. ЦЛОБ и НЦЛОБ
  3. БФИЛЕ
Тип података Опис Синтакса
БЛОБ

Овај тип података чува ЛОБ податке у бинарном формату датотеке до максималне величине 128 ТБ. Ово не чува податке на основу детаља скупа знакова, тако да може да ускладишти неструктуриране податке као што су мултимедијални објекти, слике итд.

Binary_data BLOB;

Објашњење синтаксе:

  • У горе наведеном, променљива 'Бинарни_дати' је декларисана као БЛОБ.
ЦЛОБ и НЦЛОБ

ЦЛОБ тип података чува ЛОБ податке у скупу знакова, док НЦЛОБ податке чува у изворном скупу знакова. Пошто ови типови података користе меморију засновану на скупу знакова, они не могу да чувају податке попут мултимедије, слика итд. Који се не могу ставити у низ знакова. Максимална величина ових типова података је 128 ТБ.

Charac_data CLOB;

Објашњење синтаксе:

  • У горе наведеном, променљива 'Цхарац_дата' је декларисана као тип података ЦЛОБ.
БФИЛЕ
  • БФИЛЕ су типови података који су похранили податке о неструктурираном бинарном формату изван базе података као датотеку оперативног система.
  • Величина БФИЛЕ-а је ограничена на оперативни систем и датотеке су само за читање и не могу се мењати.

Резиме

Покрили смо различите једноставне типове података који су доступни у ПЛ / СКЛ заједно са њиховом синтаксом. О сложеним типовима података сазнаћемо у даљим темама.