powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Подскажите, где ошибка
2 сообщений из 2, страница 1 из 1
Подскажите, где ошибка
    #32855562
PashaRtY
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В базе данных ASA 9 следующее:
ALTER VIEW "DBA"."v_fl"()
AS
SELECT xp_write_file('C:\income\tmp_pic.jpg', bimg) as asd
FROM tb_slides
WHERE id_slide = 22

ALTER PROCEDURE "DBA"."pr_getfile"()
as
SELECT xp_write_file('C:\income\tmp_pic.jpg', bimg) as asd
FROM tb_slides
WHERE id_slide = 22

В Interactive SQL результаты совпадают как в случает вьюса, так и процедуры. Пробую в PowerBuilder написать следующее:

SELECT asd into :ed FROM v_fl;
- работает на Ура (т.е. происходит сохранение картинки в заданный файл)

string str_73 = 'call pr_getfile()'
execute immediate :str_73;
- нифига не работает (sqlca ошибок не отображает)

В чем ошибка?
...
Рейтинг: 0 / 0
Подскажите, где ошибка
    #32856483
Andyn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне кажется, execute immediate можно использовать только для выражений не возращающих result set, а ваша процедура подразумевает возвращаемый результат, поскольку там используется select. Попробуйте описать процедуру так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
ALTER PROCEDURE "DBA"."pr_getfile"()
as
begin

declare @p_asd integer

SELECT @p_asd = xp_write_file('C:\income\tmp_pic.jpg', bimg)
FROM tb_slides
WHERE id_slide =  22 

end
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Подскажите, где ошибка
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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