![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как из Delphi грамотно инициализировать атрибуты объекта Oracle?? [D6]
Maksim © (2003-08-13 12:50:00)
Создан тип объектов в Oracle, есть процедура, принимающая такой тип как входной параметр. Надо инициировать эту процедуру из Delphi!!!
Или просто дайте ссылку на хороший FAQ или help по хранимым процедурам....
Заранее благодарен.
Shur (2003-08-18 19:55:00) [1]
класс, можеш обратиться к Тому
Reindeer Moss Eater (2003-08-13 14:50:00) [2]
Нет, я не понял почему геморрой передавать поля объекта по отдельности.
lemaks (2003-08-13 14:09:00) [3]
а писать попрограмму анализа переданного BLOB"а я буду!!!! вот и гемморой :)
Reindeer Moss Eater (2003-08-13 14:06:00) [4]
Не понимаю твоих страхов.
Передавать-то все равно машина будет, а не ты.
А она железная, геморрой ей не страшен.
lemaks (2003-08-13 14:02:00) [5]
Это геммор покруче, чем с передачей каждого поля отдельно....
Reindeer Moss Eater (2003-08-13 14:01:00) [6]
Передай блоб объекта (предварительно собрав его в непрерывный кусок памяти). А на сервере сделай разбор.
Делов-то.
lemaks (2003-08-13 13:58:00) [7]
:)
Reindeer Moss Eater (2003-08-13 13:58:00) [8]
Он есть. Телекинез и сверхсветовая сигнализация называется.
lemaks (2003-08-13 13:54:00) [9]
Блин, ну должен же быть механизм передачи объектов!!!!
Reindeer Moss Eater (2003-08-13 13:53:00) [10]
Никак! Вот в чем ответ.
lemaks (2003-08-13 13:53:00) [11]
Ну это я, так , для примера ниписал, я понимаю что уйдет указатель,
но вопрос в другом - есть объект в Delphi и есть похожий (насколько позволяет соответствие типов) объект в Oracle. Как свойства первого передать последнему??? (не передавая каждое поле объкета Delphi каждому полю объекта Oracle отдельно)!!!!
Вот в чем вопрос!!!! :(
Reindeer Moss Eater (2003-08-13 13:48:00) [12]
Заполняем поля экзмпляра T и передаем все это в Stored_proc
В результате на сервер уйдет ровно 4 байта параметров.
roottim (2003-08-13 13:48:00) [13]
> Можно ли так сделать в принципе
нет
lemaks (2003-08-13 13:47:00) [14]
roottim Это в принципе понятно, а возможен ли вариант типа:
есть
T: class
{ куча полей}
end;
Заполняем поля экзмпляра T и передаем все это в Stored_proc
begin
stored_proc_name( {Экземпляр T} );
end;
Можно ли так сделать в принципе, а то полей просто куча и с ними гемороиться (передавать каждое отдельно как параметр) не охота....
Reindeer Moss Eater (2003-08-13 13:38:00) [15]
хочу вызвать эту процедуру из Delphi и передать в качестве параметра дельфовский "объект-аналог"
А в DOА есть классы, являющиеся этим аналогом?
roottim (2003-08-13 13:34:00) [16]
declare
vMy TMyType;
begin
vMy.field1 := :p1;
vMy.field2 := :p2;
stored_proc_name(vMy);
end;
lemaks (2003-08-13 13:33:00) [17]
детально:
в DB описанна stored procedure которой в качестве параметра передается оракловсикий объект, хочу вызвать эту процедуру из Delphi и передать в качестве параметра дельфовский "объект-аналог"
Reindeer Moss Eater (2003-08-13 13:32:00) [18]
param1у тебя будет экземпляром TParam Delphi.
Как бы сильно тебе ни хотелось другого.
lemaks (2003-08-13 13:29:00) [19]
begin
stored_proc_name(:param1,:param2,...,:paramN);
end;
вот этого и хотелось бы избежать
а нужно -
begin
stored_proc_name(:param1);
end;
где param1 например объект класса с большим колличеством полей
Reindeer Moss Eater (2003-08-13 13:25:00) [20]
У кого из нас DOA? У тебя или у меня?
Если нет аналога SP, то выполни след PLSQL блок с помощью любого компонента DOA позволяющего это
begin
stored_proc_name(:param1,:param2,...,:paramN);
end;