
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
18.06.2013, 22:40
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
Собственно видел похожий пост с этой ошибкой но ответа не увидел. Почему срабатывать может данная ошибка, если в SQL COMMANDER запуская запрос: select a.ID_QUESTION, a.NAME, a.ID_BANK_QUESTION from X_QUESTIONS a, X_TEST_LINES_BANK b where b.ID_TEST=:P9_ID_TEST and a.id_bank_question=b.id_bank_question; Срабатывает как надо, отображает те данные которые я запросом и хочу получить, но как только заталкиваю в репорт на странице обычный, жму сохранить - запрос пропускает нормально, но выполняю запуск страницы и вылезает эта ошибка?? левых каких то символов вроде нет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
18.06.2013, 23:38
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
Подозреваю, что в самой таблице левый символ. Попробуйте ее почистить от всех строк. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
18.06.2013, 23:46
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
Вообще проблема 2 еще, сам код вообщем выглядит вот так: declare id_q number; name varchar2(1000); id_bank number; begin if apex_collection.collection_exists('TEST')=false then apex_collection.create_collection('TEST'); end if; --------------------------------- select a.ID_QUESTION into id_q, a.NAME into name, a.ID_BANK_QUESTION into id_bank from X_QUESTIONS a, X_TEST_LINES_BANK b where b.ID_TEST=:P9_ID_TEST and a.id_bank_question=b.id_bank_question order by a.ID_QUESTION; apex_collection.add.member('TEST',id_q,name,id_bank); end; Но понятное дело что он ругается на то, что нельзя впихнуть в переменную целый столбец(значений в таблице много) но вот как сделать чтоб он затолкнул в коллекцию все значения? В документации нашел, что можно использовать вроде как добавление значений запросом при создании с помощью CREATE_COLLECTION_FROM_QUERY, но добавлять в уже имеющуюся - не пойму как. Есть идеи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
18.06.2013, 23:50
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
Просто вырвиглаз, даже для меня. select COLUMN1,COLUMN2 into VAR1,VAR2 from TABLE - для 1 строки, иначе ошибка. VAR1,VAR2 простые типы (NUMBER например) select COLUMN1,COLUMN2 bulk collect into VAR1,VAR2 from TABLE - для 1 и более строк. VAR1,VAR2 табличные типы (table of number) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
18.06.2013, 23:51
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
Попробую, спасибо)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
18.06.2013, 23:55
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
Gustly, тип так и присваивается declare var1 table of number; ?? потому что ругает на подобное "of" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2013, 00:07
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
declare TYPE NumbersTab IS TABLE OF NUMBER; TYPE VarTab IS TABLE OF VARCHAR(1000); id_q NumbersTab ; nam VarTab; id_bank NumbersTab ; begin if apex_collection.collection_exists('TEST')=false then apex_collection.create_collection('TEST'); end if; --------------------------------- select a.ID_QUESTION,a.NAME, a.ID_BANK_QUESTION bulk collect into id_q,nam,id_bank from X_QUESTIONS a, X_TEST_LINES_BANK b where b.ID_TEST=:P9_ID_TEST and a.id_bank_question=b.id_bank_question order by a.ID_QUESTION; apex_collection.add_member('TEST', c001 => id_q, c002 => nam, c003 => id_bank); end; .................. ORA-06550: line 15, column 1: PLS-00306: wrong number or types of arguments in call to 'ADD_MEMBER' ORA-06550: line 15, column 1: PL/SQL: Statement ignored ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2013, 00:11
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
Нет. Сначала нужно создать тип, а потом объявить переменную этого типа. А вообще есть уже готовые подобные типы в пакете dbms_sql например. Если нужны меньшие коллекции тогда свой тип рядом создайте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2013, 00:12
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
SHeLEST1declare TYPE NumbersTab IS TABLE OF NUMBER; TYPE VarTab IS TABLE OF VARCHAR(1000); id_q NumbersTab ; nam VarTab; id_bank NumbersTab ; begin if apex_collection.collection_exists('TEST')=false then apex_collection.create_collection('TEST'); end if; --------------------------------- select a.ID_QUESTION,a.NAME, a.ID_BANK_QUESTION bulk collect into id_q,nam,id_bank from X_QUESTIONS a, X_TEST_LINES_BANK b where b.ID_TEST=:P9_ID_TEST and a.id_bank_question=b.id_bank_question order by a.ID_QUESTION; apex_collection.add_member('TEST', c001 => id_q, c002 => nam, c003 => id_bank); end; .................. ORA-06550: line 15, column 1: PLS-00306: wrong number or types of arguments in call to 'ADD_MEMBER' ORA-06550: line 15, column 1: PL/SQL: Statement ignored А теперь считаем сколько столбцов селектим, и во сколько переменных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2013, 00:13
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
GustlyНет. Сначала нужно создать тип, а потом объявить переменную этого типа. А вообще есть уже готовые подобные типы в пакете dbms_sql например. Если нужны меньшие коллекции тогда свой тип рядом создайте. Я вот нашел тут http://www.java2s.com/Code/Oracle/PL-SQL/TYPENumbersTabISTABLEOFNUMBER.htm некое создание + использование сразу. Воткнул - кусок верхний то пропускает а ошибка вот такая теперь ORA-06550: line 15, column 1: PLS-00306: wrong number or types of arguments in call to 'ADD_MEMBER' ORA-06550: line 15, column 1: PL/SQL: Statement ignored Думаете это связано с подобным созданием типа? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2013, 00:14
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
SHeLEST1GustlyНет. Сначала нужно создать тип, а потом объявить переменную этого типа. А вообще есть уже готовые подобные типы в пакете dbms_sql например. Если нужны меньшие коллекции тогда свой тип рядом создайте. Я вот нашел тут http://www.java2s.com/Code/Oracle/PL-SQL/TYPENumbersTabISTABLEOFNUMBER.htm некое создание + использование сразу. Воткнул - кусок верхний то пропускает а ошибка вот такая теперь ORA-06550: line 15, column 1: PLS-00306: wrong number or types of arguments in call to 'ADD_MEMBER' ORA-06550: line 15, column 1: PL/SQL: Statement ignored Думаете это связано с подобным созданием типа? эээ a.ID_QUESTION (1),a.NAME(2), a.ID_BANK_QUESTION(3) bulk collect into id_q(1),nam(2),id_bank(3) ......... apex_collection.add_member('TEST', c001 => id_q, c002 => nam, c003 => id_bank); end; С количеством вроде порядок declare TYPE NumbersTab IS TABLE OF NUMBER; TYPE VarTab IS TABLE OF VARCHAR(1000); id_q NumbersTab ; nam VarTab; id_bank NumbersTab ; begin if apex_collection.collection_exists('TEST')=false then apex_collection.create_collection('TEST'); end if; --------------------------------- select a.ID_QUESTION,a.NAME, a.ID_BANK_QUESTION bulk collect into id_q,nam,id_bank from X_QUESTIONS a, X_TEST_LINES_BANK b where b.ID_TEST=:P9_ID_TEST and a.id_bank_question=b.id_bank_question order by a.ID_QUESTION; apex_collection.add_member('TEST', c001 => id_q, c002 => nam, c003 => id_bank); end; .................. ORA-06550: line 15, column 1: PLS-00306: wrong number or types of arguments in call to 'ADD_MEMBER' ORA-06550: line 15, column 1: PL/SQL: Statement ignored А теперь считаем сколько столбцов селектим, и во сколько переменных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2013, 00:15
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
GustlySHeLEST1declare TYPE NumbersTab IS TABLE OF NUMBER; TYPE VarTab IS TABLE OF VARCHAR(1000); id_q NumbersTab ; nam VarTab; id_bank NumbersTab ; begin if apex_collection.collection_exists('TEST')=false then apex_collection.create_collection('TEST'); end if; --------------------------------- select a.ID_QUESTION,a.NAME, a.ID_BANK_QUESTION bulk collect into id_q,nam,id_bank from X_QUESTIONS a, X_TEST_LINES_BANK b where b.ID_TEST=:P9_ID_TEST and a.id_bank_question=b.id_bank_question order by a.ID_QUESTION; apex_collection.add_member('TEST', c001 => id_q, c002 => nam, c003 => id_bank); end; .................. ORA-06550: line 15, column 1: PLS-00306: wrong number or types of arguments in call to 'ADD_MEMBER' ORA-06550: line 15, column 1: PL/SQL: Statement ignored А теперь считаем сколько столбцов селектим, и во сколько переменных. эээ a.ID_QUESTION (1),a.NAME(2), a.ID_BANK_QUESTION(3) bulk collect into id_q(1),nam(2),id_bank(3) ......... apex_collection.add_member('TEST', c001 => id_q, c002 => nam, c003 => id_bank); end; С количеством вроде порядок Случайно кривое сообщение сверху кинул >_< ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2013, 00:40
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
SHeLEST1Gustlyпропущено... А теперь считаем сколько столбцов селектим, и во сколько переменных. эээ a.ID_QUESTION (1),a.NAME(2), a.ID_BANK_QUESTION(3) bulk collect into id_q(1),nam(2),id_bank(3) ......... apex_collection.add_member('TEST', c001 => id_q, c002 => nam, c003 => id_bank); end; С количеством вроде порядок Случайно кривое сообщение сверху кинул >_< Что за число в скобках? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2013, 00:42
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
GustlySHeLEST1пропущено... эээ a.ID_QUESTION (1),a.NAME(2), a.ID_BANK_QUESTION(3) bulk collect into id_q(1),nam(2),id_bank(3) ......... apex_collection.add_member('TEST', c001 => id_q, c002 => nam, c003 => id_bank); end; С количеством вроде порядок Случайно кривое сообщение сверху кинул >_< Что за число в скобках? Это я себе нумерацию просто прописал)) Вы просто сказали про количество я думал вдруг реально уже не вижу ничего. а так то код вот так a.ID_QUESTION ,a.NAME, a.ID_BANK_QUESTION bulk collect into id_q,nam,id_bank ......... apex_collection.add_member('TEST', c001 => id_q, c002 => nam, c003 => id_bank); end; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2013, 00:51
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
SHeLEST1Gustlyпропущено... Что за число в скобках? Это я себе нумерацию просто прописал)) Вы просто сказали про количество я думал вдруг реально уже не вижу ничего. а так то код вот так a.ID_QUESTION ,a.NAME, a.ID_BANK_QUESTION bulk collect into id_q,nam,id_bank ......... apex_collection.add_member('TEST', c001 => id_q, c002 => nam, c003 => id_bank); end; А коллекцию апекса создали? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2013, 00:53
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
GustlySHeLEST1пропущено... Это я себе нумерацию просто прописал)) Вы просто сказали про количество я думал вдруг реально уже не вижу ничего. а так то код вот так a.ID_QUESTION ,a.NAME, a.ID_BANK_QUESTION bulk collect into id_q,nam,id_bank ......... apex_collection.add_member('TEST', c001 => id_q, c002 => nam, c003 => id_bank); end; А коллекцию апекса создали? Вот полный код: eclare TYPE NumbersTab IS TABLE OF NUMBER; TYPE VarTab IS TABLE OF VARCHAR(1000); id_q NumbersTab ; nam VarTab; id_bank NumbersTab ; begin if apex_collection.collection_exists('TEST')=false then apex_collection.create_collection('TEST'); end if; --------------------------------- select a.ID_QUESTION,a.NAME, a.ID_BANK_QUESTION bulk collect into id_q,nam,id_bank from X_QUESTIONS a, X_TEST_LINES_BANK b where b.ID_TEST=:P9_ID_TEST and a.id_bank_question=b.id_bank_question order by a.ID_QUESTION; apex_collection.add_member('TEST', c001 => id_q, c002 => nam, c003 => id_bank); end; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2013, 01:23
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
SHeLEST1, Вы делаете селект в коллекцию. Коллекция это множество строк. А add_member это один элемент. Вам надо брать одну из коллекций и по цылку добавлять мемберов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2013, 01:30
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
GustlySHeLEST1, Вы делаете селект в коллекцию. Коллекция это множество строк. А add_member это один элемент. Вам надо брать одну из коллекций и по цылку добавлять мемберов. По цылку????? Как я понял мне надо брать по 1 строке и добавлять в коллекцию вы это имеете ввиду? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2013, 02:45
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
Как ни пытался построчно - не получается почему то. Не могу правильно использовать rownum в данном селекте чтоб потом в цикле этот rownum использовать. Есть идеи реализовать как можно попроще?)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2013, 10:03
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
Причем тут rownum. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2013, 13:18
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
SHeLEST1select a.ID_QUESTION,a.NAME, a.ID_BANK_QUESTION bulk collect into id_q,nam,id_bank from X_QUESTIONS a, X_TEST_LINES_BANK b where b.ID_TEST=:P9_ID_TEST and a.id_bank_question=b.id_bank_question order by a.ID_QUESTION; apex_collection.add_member('TEST', c001 => id_q, c002 => nam, c003 => id_bank); end; Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2013, 13:34
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
CasufiSHeLEST1select a.ID_QUESTION,a.NAME, a.ID_BANK_QUESTION bulk collect into id_q,nam,id_bank from X_QUESTIONS a, X_TEST_LINES_BANK b where b.ID_TEST=:P9_ID_TEST and a.id_bank_question=b.id_bank_question order by a.ID_QUESTION; apex_collection.add_member('TEST', c001 => id_q, c002 => nam, c003 => id_bank); end; Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. cur - курсор? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2013, 13:39
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
SHeLEST1, курсор, неявный ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.06.2013, 13:40
|
|||
|---|---|---|---|
failed to parse SQL query: ORA-00911: invalid character |
|||
|
#18+
CasufiSHeLEST1, курсор, неявный Сейчас попробую, спасибо большое! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=50&tablet=1&tid=1875661]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
51ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
| others: | 209ms |
| total: | 360ms |

| 0 / 0 |
