Здравствуйте, гость ( Вход | Регистрация )
crashsp | Дата 16.11.2010, 15:33 |
Еще раз спасибо за помощь Буду знать...в прочем все таки альтернатива где то есть))буду искать |
|
xls | Дата 16.11.2010, 14:41 |
Цитата qDecodeOCIType: unknown OCI datatype: 116 "ORA-00932: несовместимые типы данных: ожидается CHAR, получено DTYCWD Unable to goto next" C чем это связано?? и как с этим бороться ? Видимо, все же функция, возвращающая курсор, не может быть использована для возврата записей в Qt обычным способом. Если не принципиально, можно пойди в обход: создать таблицу со столбцами, соответствующими требуемым столбцам в возвращаемых записях ( полагаю, функция писалась все же не для того, чтобы выбрать все EMPLOYEE_ID из HR.EMPLOYEES ) и в теле функции заполнять эту таблицу, а потом считывать поля обычным SQL-запросом. |
|
crashsp | Дата 15.11.2010, 20:36 |
Огромное спасибо за информацию !! Пример скомпилился все окей, в Pl/Devolop отработал вернул курсор показал записи но в Qt приложение выдал вот такую штуку qDecodeOCIType: unknown OCI datatype: 116 "ORA-00932: несовместимые типы данных: ожидается CHAR, получено DTYCWD Unable to goto next" C чем это связано?? и как с этим бороться ? Благодарю.... |
|
xls | Дата 15.11.2010, 14:05 |
Вот как раз под словом "результат" я и имел ввиду диагностические сообщения Получить доступ к сообщениям, выводимым с помощью DBMS_OUTPUT через QSqlQuery нельзя. Цитата Есть идеи как вывести это дело ??? И еще был бы очень признателен если б в двух словах если это возможно ) пояснили как отобразить данные из курсора,я над этим еще даже не думал а придется, видел на форумах что возникали такие проблеммы с отображение и ответов к сожелению не было. SQL create or replace package hr_employees_package as type t_ref_cursor is ref cursor; function myproc return t_ref_cursor; end hr_employees_package; create package body hr_employees_package as function myproc return t_ref_cursor is mycursor t_ref_cursor; begin open mycursor for select EMPLOYEE_ID from HR.EMPLOYEES; return mycursor; end MyProc; end hr_employees_package; Вызов, соответственно SQL select hr_employees_package.myproc from dual; Цитата Так же слышал что то про OTL какого ваше мнение ? следует тратить время на ее изучение или же все можно сделать и без нее ? C OTL Вам лучше пока поверменить |
|
crashsp | Дата 13.11.2010, 17:22 |
Невероятно рад что кто то откликнулся!! Вот как раз под словом "результат" я и имел ввиду диагностические сообщения просто конкретно не сформулировал вопрос sorry, то что я могу посмотреть в sqlplus это я знаю,но дело в том что мне надо это в моем приложение(редактор для себя) я знаю их куча но есть время почему бы не заморочиться, решил так.... Есть идеи как вывести это дело ??? И еще был бы очень признателен если б в двух словах если это возможно ) пояснили как отобразить данные из курсора,я над этим еще даже не думал а придется, видел на форумах что возникали такие проблеммы с отображение и ответов к сожелению не было. Так же слышал что то про OTL какого ваше мнение ? следует тратить время на ее изучение или же все можно сделать и без нее ? Благодарю..... |
|
xls | Дата 13.11.2010, 14:18 |
Пакет DBMS_OUTPUT, процедуру из которого ты использовал, предназаначен для вывода диагностических сообщений. Если тебе надо вернуть набор записей, то нужно создавать не простую процедуру, а сложную функцию, возвращающую REFCURSOR. А просмотреть вывод диагностических сообщений можно, например, в sqlplus после включения вывода "set serveroutput on" и вызова процедуры/функции. |
|
crashsp | Дата 12.11.2010, 10:51 |
Доброго времени суток! Создал простую процедуру в Oracle вот так :
Дальше в приложение Qt хочу получить ее результат пытаюсь сделать вот так : Нет ни чего, я думаю и не должно быть) ,ошибки при выполнение тоже нет. Я думаю суть я донес,собственно вопрос: каким все таки способом можно получить результат ? |
|
Просмотр темы полностью (откроется в новом окне) | |
![]() |
Текстовая версия | Сейчас: 27.4.2025, 14:09 |