powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Collections. EXTEND && NOT NULL
4 сообщений из 4, страница 1 из 1
Collections. EXTEND && NOT NULL
    #36866849
Tolka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В доке грится
автор
EXTEND Collection Method

The EXTEND method has these forms:
■ EXTEND appends one null element to the collection.
■ EXTEND(n) appends n null elements to the collection.
■ EXTEND(n,i) appends n copies of the ith element to the collection.

Note: EXTEND(n,i) is the only form that you can use for a collection
whose elements have the NOT NULL constraint.



Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
declare
   type t_v is varray( 2 ) of number not null;
   l_v t_v := t_v();
begin
   l_v.extend;
   dbms_output.put_line(nvl(to_char(l_v(l_v.last)), 'null'));
end;
/

Output:

null

Т.е. получили NULL элемент в коллекции с NOT NULL ограничением

В тоже время если выполнить

Код: plaintext
1.
l_v(l_v.last) := null;

то получим ошибку компиляции PL/SQL PLS-00382
...
Рейтинг: 0 / 0
Collections. EXTEND && NOT NULL
    #36867471
makitka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да, внатуре странно..
Код: plaintext
If you impose the NOT NULL constraint on a TABLE or VARRAY type, you cannot apply the first two forms of EXTEND to collections of that type.
это из документации по 11g
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Collections. EXTEND && NOT NULL
    #39712751
Alexander_Ttl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Похоже, ничего не поменялось с тех пор
Код: plsql
1.
2.
create or replace type test_varray as varray(1) of varchar2(10) not null;
select nvl(column_value,'NULL') from table(test_varray(''));


Результат 'NULL'.
Какой смысл указывать в определении типа not null, не понятно.
...
Рейтинг: 0 / 0
Collections. EXTEND && NOT NULL
    #39712752
Alexander_Ttl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Версия 12.1.0.2.0
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Collections. EXTEND && NOT NULL
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]