Есть хранимая процедура:
CREATE PROCEDURE RETURN_MESSAGE(
MESSAGE_ID INTEGER)
RETURNS (
MESSAG BLOB SUB_TYPE 1 SEGMENT SIZE 8)
AS
begin
/* Возвращает содержимое определенного сообщения */
for select messag
from messages
where message_id=:message_id
into :messag do
suspend;
end
Процедура возвращает blob.
Теперь я пытаюсь получить этот blob в Дельфях, но уже как строку. Если я делаю так:
dm.qMessage.sql.text:='select * from return_message(100)'; // Это query
dm.qMessage.Open;
Memo1.Lines.Text:=dm.qMessage.FieldByName('messag').AsString;
— то все работает.
Если же я пытаюсь работать с компонентой TIBStoredProc:
dm.IBStoredProc1.ParamByName('message_id').AsInteger:=100;
dm.IBStoredProc1.ExecProc;
Memo1.Lines.Text:=dm.IBStoredProc1.ParamByName('messag').AsString;
То в Memo появляется строка '[blob]'.
Как получить строку с помощью TIBStoredProc ?
... << Играет Metallica — Orion (Instrumental)>>