Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.09.08;
Скачать: [xml.tar.bz2];

Вниз

Как из 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 вся ветка

Форум: "Базы";
Текущий архив: 2003.09.08;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.007 c
1-24535
VISA
2003-08-26 13:00
2003.09.08
Запрет максимизации окна...


1-24508
GreySerg
2003-08-26 18:57
2003.09.08
Освобождается ли память при ListView.Destroy выделенная...


7-24731
Mishel
2003-06-25 14:49
2003.09.08
Как избавиться от потерь при чтении I/O портов?


1-24531
Eagle Owl
2003-08-26 20:02
2003.09.08
Число в шестнадцатеричном формате...


1-24423
Karburator
2003-08-25 21:21
2003.09.08
Отличие файла от каталога





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский