در این قسمت از آموزش برنامه نویسی اوراکل بعد از آشنایی کامل با بخش Database Objects قصد داریم آموزش معرفی Collections را یاد بگیریم.

در شروع معرفی Collections، به شما اجازه می دهند مجموعه ای از elements عناصر یا مقادیر را در دیتابیس ذخیره کنید . در دیتابیس اوراکل در زبان PL/SQL ما سه نوع collections داریم :

  • Varrays : یک varray شبیه به آرایه array در زبان برنامه نویسی #C و java می باشد. یک varray مجموعه و آرایه ای از elements عناصر و مقادیر را بصورت مرتب شده ذخیره می کند و هر element عنصر و مقدار شامل یک index می باشد که موقعیت ذخیره مقدار را در آرابه مشخص می کند. Elements در یک varray فقط به صورت کلی تغییر داده می شود و نه به صورت انفرادی. حتی اگر بخواهید فقط یک element عضو از آرایه را نغییر دهید شما باید تغییرات را روی همه elements عناصر یک varray فراهم کنید. بیشترین اندازه یک varray زمانی که مشخص می شود که ایجاد شود و در زمان ایجاد یک varray می توانید بیشترین اندازه عناصر یک varray را مشخص کنید اما بعد از این که varray ایجاد شد شما می توانید اندازه یک varray را تغییر دهید.
  • Nested tables : یک nested table جدولی می باشد که با جدولی دیگر embedded جاسازی شده است. شما می توانید در این nested table عناصر elements را به صورت انفرادی و جداگانه درجدول insert , update, delete کنید که این آرایه انعطاف بیشتری نسبت به varray دارد که عناصر elements به صورت کلی می توانند تغییر داده شود. یک nested table بیشترین اندازه ندارد و شما می توانید اعداد و مقادیر elements را به صورت خودسرانه در nested table ذخیره کنید.
  • Associative arrays ( قبلا معروف به index-by tables بوده است ) : یک associative array خیلی شبیه به hash table در زبان برنامه نویسی جاوا می باشد و از دیتابیس اوراکل نسخه ۱۰g به بعد معرفی شد . یک associative array بصورت مجموعه ای جفت از key و value می باشد . شما می توانید مقدار value یک array را از طریق key (که میتواند از نوع string متنی باشد یا می تواند اعداد integer باشد که مشخص کننده موقعیت value در array می باشد) بدست آورید. یک associative array فقط در زبان PL/SQL مورد استفاده قرار دارد و نمی توان از آن در دیتابیس اوراکل از طریق SQL استفاده کرد و در دیتابیس ذخیره نمود.

اطلاعات بیشتر در مورد کالکشن