След обработката на изключения, темата, която завършихме с последния урок за PL/SQL, колекцията е най-търсената тема в моите социални медии. Ето защо следващата ни серия от уроци ще бъде базирана на PL/SQL колекции. Започвайки от днес.
Какво представляват PL/SQL колекциите в Oracle Database?
Хомогенна структура от данни с едно измерение, която е съставена от елементи от един и същ тип данни, се нарича колекция в Oracle Database. На прост език можем да кажем, че масив в Oracle Database се нарича Колекция.
Определение
Хомогенна структура от данни с едно измерение, която е съставена от елементи от един и същ тип данни, се нарича колекция в Oracle Database.
Защо наричаме колекцията хомогенна структура от данни?
Както знаем, че масивът се състои от данни от един и същ тип данни, както и колекцията PL/SQL, поради което ги наричаме хомогенна структура на данни.
Структурата на PL/SQL колекциите се състои от клетка с индекс, наречен индекс. Данните се съхраняват в тези клетки и могат да бъдат идентифицирани и достъпни с помощта на индексния номер. Това отново е много подобно на структурата на масивите, но за разлика от масива PL/SQL колекциите са строго едномерни.
Информационен байт:
Колекцията в Oracle Database е строго едноизмерна. Не е възможно да се реализират на 2D координати. Когато обаче колекцията има атрибут тип обект или тип колекция, тогава е възможно да се реализира многоизмерен масив.
Типове PL/SQL колекции в Oracle Database
PL/SQL колекциите могат да бъдат разделени на две категории:
- Постоянен и
- Непостоянно.
Постоянното събиране, както подсказва името, са тези, които физически съхраняват структурата на колекцията с данните в базата данни и могат да бъдат достъпни отново, ако е необходимо. Докато непостоянното събиране съхранява данни и структура само за една сесия.
Въз основа на горните категории колекциите са разделени на три типа:
- Вложени таблици
- Масиви с променлив размер или VARRAY и
- Асоциативни масиви.
Вложена таблица – Вложените таблици са постоянна колекция, което означава, че могат да се съхраняват в базата данни и да се използват повторно. Вложените таблици нямат горни граници на редовете, така че те са неограничени колекции. Вложените таблици първоначално са плътни, но могат да станат редки чрез изтриване.
VARRAY – Подобно на вложените таблици, масивите с променлив размер също са постоянни колекции, така че могат да бъдат създадени в база данни, както и в PL/SQL блок и могат да бъдат използвани повторно. Но за разлика от вложените таблици VARRAY са ограничени по природа, което означава, че могат да съдържат само фиксирано количество елементи.
Информационен байт:
Размерът и схемата за съхранение на VARRAY ги прави различни от вложените таблици.
Асоциативен масив – За разлика от вложените таблици и VARRAY, асоциативните масиви са непостоянни колекции, така че не могат да се съхраняват в базата данни. Тъй като не могат да се съхраняват, следователно не могат да бъдат използвани повторно, но са налични в PL/SQL блок за сесията. Но подобно на вложените таблици, асоциативните масиви са неограничени, което означава, че те също нямат долни и горни граници на редовете.
Често използвани термини в колекцията PL/SQL.
Ограничена и неограничена колекция – Колекция, която има долни или горни граници на стойности на номера на ред или да кажем колекция, която може да съдържа само ограничен брой елементи, се наричат ограничени колекции. Колекция, която няма долни или горни граници за номера на редове, се наричат неограничени колекции.
Плътна и рядка колекция. – Казват, че колекциите са плътни ако всички редове между първия и последния са дефинирани и им е дадена стойност. А колекция, в която редовете не са дефинирани и се попълват последователно, се наричат редки колекция.
Това е всичко за този урок. Можете да помогнете на другите в ученето, както и да помогнете на мен и моя канал да се развиваме, като споделите този блог с приятелите си или в социалните си медии.
Вече можете да получавате актуализации на нашите блогове, подаръци заедно с други интересни неща, тъй като това се случва направо във входящата ви кутия, просто се абонирайте за нашия бюлетин. Благодаря и приятен ден!