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

Как из Delphi грамотно инициализировать атрибуты объекта Oracle??   Найти похожие ветки 

← →
Maksim   (2003-08-13 12:50) [0]

Создан тип объектов в Oracle, есть процедура, принимающая такой тип как входной параметр. Надо инициировать эту процедуру из Delphi!!!
Или просто дайте ссылку на хороший FAQ или help по хранимым процедурам....
Заранее благодарен.


← →
Reindeer Moss Eater ©   (2003-08-13 13:01) [1]

TStoredProcedure и его свойства


← →
Maksim   (2003-08-13 13:06) [2]

Я подключаюсь к Oracle через DOA, а не BDE... :( поэтому TStoredProcedure - не пойдёть... :E


← →
Reindeer Moss Eater ©   (2003-08-13 13:13) [3]

Ну так подобный класс в DOA используй.


← →
lemaks ©   (2003-08-13 13:16) [4]

Какой, хотелсь бы узнать???? :)


← →
roottim   (2003-08-13 13:25) [5]

пишешь в SQL
begin
myprocedure(:p1);
end;


вызываешЬ DataSet.execute;


← →
Reindeer Moss Eater ©   (2003-08-13 13:25) [6]

У кого из нас DOA? У тебя или у меня?
Если нет аналога SP, то выполни след PLSQL блок с помощью любого компонента DOA позволяющего это

begin
stored_proc_name(:param1,:param2,...,:paramN);
end;


← →
lemaks ©   (2003-08-13 13:29) [7]

begin
stored_proc_name(:param1,:param2,...,:paramN);
end;

вот этого и хотелось бы избежать
а нужно -
begin
stored_proc_name(:param1);
end;

где param1 например объект класса с большим колличеством полей


← →
Reindeer Moss Eater ©   (2003-08-13 13:32) [8]

param1 у тебя будет экземпляром TParam Delphi.
Как бы сильно тебе ни хотелось другого.


← →
lemaks ©   (2003-08-13 13:33) [9]

детально:
в DB описанна stored procedure которой в качестве параметра передается оракловсикий объект, хочу вызвать эту процедуру из Delphi и передать в качестве параметра дельфовский "объект-аналог"


← →
roottim   (2003-08-13 13:34) [10]

declare
vMy TMyType;
begin
vMy.field1 := :p1;
vMy.field2 := :p2;
stored_proc_name(vMy);
end;


← →
Reindeer Moss Eater ©   (2003-08-13 13:38) [11]

хочу вызвать эту процедуру из Delphi и передать в качестве параметра дельфовский "объект-аналог"

А в DOА есть классы, являющиеся этим аналогом?


← →
lemaks ©   (2003-08-13 13:47) [12]

roottim Это в принципе понятно, а возможен ли вариант типа:
есть
T: class
{ куча полей}
end;

Заполняем поля экзмпляра T и передаем все это в Stored_proc

begin
stored_proc_name( {Экземпляр T} );
end;

Можно ли так сделать в принципе, а то полей просто куча и с ними гемороиться (передавать каждое отдельно как параметр) не охота....


← →
Reindeer Moss Eater ©   (2003-08-13 13:48) [13]

Заполняем поля экзмпляра T и передаем все это в Stored_proc

В результате на сервер уйдет ровно 4 байта параметров.


← →
roottim   (2003-08-13 13:48) [14]

> Можно ли так сделать в принципе
нет


← →
lemaks ©   (2003-08-13 13:53) [15]

Ну это я, так , для примера ниписал, я понимаю что уйдет указатель,
но вопрос в другом - есть объект в Delphi и есть похожий (насколько позволяет соответствие типов) объект в Oracle. Как свойства первого передать последнему??? (не передавая каждое поле объкета Delphi каждому полю объекта Oracle отдельно)!!!!
Вот в чем вопрос!!!! :(


← →
Reindeer Moss Eater ©   (2003-08-13 13:53) [16]

Никак! Вот в чем ответ.


← →
lemaks ©   (2003-08-13 13:54) [17]

Блин, ну должен же быть механизм передачи объектов!!!!


← →
Reindeer Moss Eater ©   (2003-08-13 13:58) [18]

Он есть. Телекинез и сверхсветовая сигнализация называется.


← →
lemaks ©   (2003-08-13 13:58) [19]

:)


← →
Reindeer Moss Eater ©   (2003-08-13 14:01) [20]

Передай блоб объекта (предварительно собрав его в непрерывный кусок памяти). А на сервере сделай разбор.
Делов-то.


← →
lemaks ©   (2003-08-13 14:02) [21]

Это геммор покруче, чем с передачей каждого поля отдельно....


← →
Reindeer Moss Eater ©   (2003-08-13 14:06) [22]

Не понимаю твоих страхов.
Передавать-то все равно машина будет, а не ты.
А она железная, геморрой ей не страшен.


← →
lemaks ©   (2003-08-13 14:09) [23]

а писать попрограмму анализа переданного BLOB"а я буду!!!! вот и гемморой :)


← →
Reindeer Moss Eater ©   (2003-08-13 14:50) [24]

Нет, я не понял почему геморрой передавать поля объекта по отдельности.


← →
Shur ©   (2003-08-18 19:55) [25]

класс, можеш обратиться к Тому



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

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



Память: 0.5 MB
Время: 0.012 c
4-24748
Coban
2003-07-06 12:30
2003.09.08
w9x аналог GetUserProfileDirectory


8-24550
Kush
2003-05-13 15:59
2003.09.08
CreateMappedBmp - проблема


8-24563
bkv
2003-05-08 17:01
2003.09.08
Проблема в заливке!


9-24288
[Baradoo]
2003-03-05 17:10
2003.09.08
Сохранение данных игры в *.exe


1-24469
Karburator
2003-08-27 16:28
2003.09.08
компонент ShellListView




   Наверх