Вниз
Скачать: CL | DM;

Передача 3-мерного масива строк в ХП. D7. Firebird. IBX.   Найти похожие ветки 

← →
_RusLAN ©   (2006-08-05 13:40) [0]

Требуется совет бывалых как реализовать сабж.
 Я думаю передавать все одной строкой символов с разделителями, а в ХП распарсивать(отсюда вопрос: Как?).
 Начально вся структура идет в виде XML, может так и передавать в хранимую процедуру  XML-текст в ввиде строки, и сделать UDF, которая будет принимать XML-текст и выдавать значение элемента по индексу.
подскажите, как обычно решают такие задачи?


← →
Dok   (2006-08-05 14:37) [1]

Зачем?


← →
PEAKTOP ©   (2006-08-05 14:53) [2]

я бы начал от UDF плясать...
а в ХП необязательно передавать. Можно массив сохранить во временной таблице, а в ХП передать ID этого элемента, а значение в виде BLOB TEXT выбирать в самой ХП.


← →
Dok   (2006-08-05 15:01) [3]

Зачем?


← →
Desdechado ©   (2006-08-07 11:23) [4]

Что есть "3-мерный массив строк"?
Может, его просто сохранить временно в буферную таблицу, передав в ХП указание, как его оттуда извлечь для обработки? Ведь любую трехмерщину известной структуры можно поделить на срезы (провести планаризацию) и вписать в плоскую таблицу.


← →
_RusLAN ©   (2006-08-07 13:56) [5]

> Что есть "3-мерный массив строк"?

Как тогда просто передать ХП масив строк?

Со временными таблицами не хочется заморачиваться, их же нет в чистом виде в FB 1.5.3


← →
Desdechado ©   (2006-08-07 14:04) [6]

Я не упоминал термин "временная". Я написал - буферная. Этопостоянная таблица, данные в которой не задерживаются. Ты можешь туда их вписать перед вызовом процедуры, а в процедуре после обработок потереть. Можно ID сессии туда втолкать при многопользовательской работе, чтоб отличать свои от чужих при необходимости хранить этот буфер в течение нескольких транзакций.


← →
Сергей М. ©   (2006-08-07 15:24) [7]


> _RusLAN ©   (07.08.06 13:56) [5]


> Как тогда просто передать ХП масив строк?


Как BlobStream.

В теле ХП для получения элемента массива вызывается UDF, которой на вход подается полученный BlobID и индекс элемента и которая возвращает элемент.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.027 c
6-1147626877
Dstr
2006-05-14 21:14
2006.10.08
Компы в сети


15-1158402494
Чапаев
2006-09-16 14:28
2006.10.08
bash.org.ru ;-)


15-1158474454
ramor
2006-09-17 10:27
2006.10.08
Модуль программиста в Delphi


15-1158535196
MDI
2006-09-18 03:19
2006.10.08
MDI Windows


8-1142526957
apl
2006-03-16 19:35
2006.10.08
Посоветуйте компонент




   Наверх