Най-накрая получих решение на този проблем, благодарение на известно копаене от потребител. Проблемът не беше с контейнера; защо работи без контейнера на изображението на VirtualBox, нямам представа. Не, проблемът беше с COLLECT()
. Изглежда, че и двете стойности, които се събират, трябва да бъдат прехвърлени към определен тип, и полученият масив също трябва да бъде преобразуван в предварително дефиниран тип данни за масив. Просто така се случи, че моят код има персонализиран тип масив:
CREATE TYPE sqitch_array AS varray(1024) OF VARCHAR2(512);
Така че мога да накарам заявката да работи чрез кастинг на COLLECT()
така:
CAST(COLLECT(CAST(t.tags as VARCHAR2(512))) AS sqitch_array)