powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Cast()
10 сообщений из 10, страница 1 из 1
Cast()
    #32170867
bjohny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть код:
create table table1 (sid varchar2(3), LName varchar2(10));
Create table table2 (sid varchar2(3), Choise Varchar2(10));
Insert into table1 values('001','User1');
Insert into table1 values('002','User2');
Insert into table2 values('001','Choise1');
Insert into table2 values('001','Choise2');
Insert into table2 values('002','Choise3');
Insert into table2 values('002','Choise4');

create type Choise_List as table of varchar2(100);
set lines 100;
set pages 9999;
col ls format a80 word;

select f.sid,
f.lname,
Cast(MultiSet(select s.choise from table2 s
where s.sid=f.sid
)as Choise_List)
from table1 f

drop type lists_objects;
Drop table Table1;
Drop table Table2;

При вополнении выдается:
Предупреждение: Тип создан с ошибками компиляции.

В чем проблема???
...
Рейтинг: 0 / 0
Cast()
    #32170872
Фотография softy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А
show errors;
не пробовал смотреть
...
Рейтинг: 0 / 0
Cast()
    #32170910
bjohny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, говорит PLS-00103. И как с ней бороться подскажите.
Версия sql 8.1.7.2.1
...
Рейтинг: 0 / 0
Cast()
    #32170919
Фотография softy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выдай полный результат show errors
...
Рейтинг: 0 / 0
Cast()
    #32170928
bjohny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот все что выдается:
Ошибки для TYPE CHOISE_LISTS:

LINE/COL ERROR
-------- -----------------------------------------------------------------
2/1 PLS-00103: Встретился символ "SET"

Таблица создана.
Таблица создана.
1 строка создана.
1 строка создана.
1 строка создана.
1 строка создана.
1 строка создана.
1 строка создана.
Предупреждение: Тип создан с ошибками компиляции.
...
Рейтинг: 0 / 0
Cast()
    #32170932
.dba
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
create type Choise_List as table of varchar2( 100 );
/
set lines  100 ; 


:-)))
...
Рейтинг: 0 / 0
Cast()
    #32170951
Фотография softy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, я примерно это и предполагал :)
...
Рейтинг: 0 / 0
Cast()
    #32170954
bjohny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да спасиб. А почему select ничего не отображает:
show errors;
create table table1 (sid varchar2(3), LName varchar2(10));
Create table table2 (sid varchar2(3), Choise Varchar2(10));
Insert into table1 values('001','User1');
Insert into table1 values('002','User2');
Insert into table2 values('001','Choise1');
Insert into table2 values('001','Choise2');
Insert into table2 values('002','Choise3');
Insert into table2 values('002','Choise4');

create type Choise_Lists as table of varchar2(100);
/
set lines 100;
set pages 9999;
col ls format a80 word;

select f.sid,
f.lname,
Cast(MultiSet(select s.choise from table2 s
where s.sid=f.sid
)as Choise_Lists) ls
from table1 f

drop type Choise_Lists;
Drop table Table1;
Drop table Table2;
...
Рейтинг: 0 / 0
Cast()
    #32170971
Фотография softy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
set lines  100 ; 
set pages  9999 ; 
col ls format a80 word; 

drop type Choise_Lists
/
Drop table Table1
/
Drop table Table2
/

create table table1 (sid varchar2( 3 ), LName varchar2( 10 ))
/
Create table table2 (sid varchar2( 3 ), Choise Varchar2( 10 ))
/

Insert into table1 values('001','User1')
/
Insert into table1 values('002','User2')
/
Insert into table2 values('001','Choise1')
/
Insert into table2 values('001','Choise2')
/
Insert into table2 values('002','Choise3')
/
Insert into table2 values('002','Choise4')
/

create type Choise_Lists as table of varchar2( 100 )
/ 

select f.sid, 
f.lname, 
Cast(MultiSet(select s.choise from table2 s 
where s.sid=f.sid 
)as Choise_Lists) ls 
from table1 f; 
...
Рейтинг: 0 / 0
Cast()
    #32170973
bjohny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да это не работает в WorkSheet, в SQL Plus все нормально, всем спасибо :)
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Cast()
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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