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

TpFIBStoredProc vs TpFIBDataSet   Найти похожие ветки 

← →
starik30   (2004-07-21 16:56) [0]

Добрый день ...

Не подскажите в чем преимущества и недостатки (включая накладные расходы для сервера) использования
TpFIBDataSet вместо TpFIBStoredProc при вызове хранимой процедуры, когда процедура возвращает результат ?.. когда не возвращает результат ?

Заранее благодарен за ответ

Юра


← →
Соловьев ©   (2004-07-21 16:58) [1]

все что возращает записи - TpFIBDataSet
все что не возвращает - TpFIBQuery, TpFIBDatabase


← →
starik30   (2004-07-21 17:00) [2]

Извините а зачем тогда TpFIBStoredProc ?


← →
starik30   (2004-07-21 17:01) [3]

Извините а зачем тогда TpFIBStoredProc ?


← →
Соловьев ©   (2004-07-21 17:01) [4]

Шоб було:)
И пора перейти уже на FireBird 1.5


← →
Соловьев ©   (2004-07-21 17:02) [5]


> когда не возвращает результат ?

кстати, результат не всегда запись:) это надо учесть читая [1]


← →
Johnmen ©   (2004-07-21 17:04) [6]

>Извините а зачем тогда TpFIBStoredProc ?

Шоб выполнять безответные ХП или немногословные ХП, т.е. "однословные"...:)


← →
Соловьев ©   (2004-07-21 17:05) [7]


> Извините а зачем тогда TpFIBStoredProc ?

есть небольшая фича - читает из системной таблицы параметры.


← →
starik30   (2004-07-21 17:05) [8]

Не подскажите : какой  максимальный размер базы данных для FB1.5 (win32) ?


← →
Курдль ©   (2004-07-21 17:07) [9]


> Соловьев ©   (21.07.04 17:01) [4]
> Шоб було:)
> И пора перейти уже на FireBird 1.5


Я не пользовал IB (в таких количествах) но думаю, что T...StoredProc может быть удобен при нескольких исходящих или двунаправленных параметрах SP.


← →
Соловьев ©   (2004-07-21 17:10) [10]


> удобен при нескольких исходящих или двунаправленных параметрах
> SP.

это все реализуется нормально и в датасете.


← →
Курдль ©   (2004-07-21 17:11) [11]


> Соловьев ©   (21.07.04 17:10) [10]
> это все реализуется нормально и в датасете.

Как? Разве он обучен принимать параметры?


← →
Соловьев ©   (2004-07-21 17:13) [12]


> Как? Разве он обучен принимать параметры?

а как ты думаешь там работает insert, update, delete, refresh?


← →
Johnmen ©   (2004-07-21 17:15) [13]

>Не подскажите : какой  максимальный размер базы данных для FB1.5 (win32) ?

http://www.ibase.ru/v6/ib6faq.htm


← →
Курдль ©   (2004-07-21 17:20) [14]


> Соловьев ©   (21.07.04 17:13) [12]
> а как ты думаешь там работает insert, update, delete, refresh?


Т.е. если если в датасэте прописать вызов процедуры, меняющей параметр PARAM1, то можно будет получить значение этого параметра в переменную х после выполнения таким образом:

DataSet.ExecSQL;
x := DataSet.ParamByName("PARAM1").Value;


← →
Соловьев ©   (2004-07-21 17:23) [15]


> x := DataSet.ParamByName("PARAM1").Value;

x := DataSet.FieldByName("PARAM1").Value;


← →
Курдль ©   (2004-07-21 17:26) [16]


> Соловьев ©   (21.07.04 17:23) [15]


DataSet.Sql.Text := "begin TestProc(@PARAM1); end;";
DataSet.ExecSQL;
x := DataSet.FieldByName("PARAM1").Value;
 
Так оно и сработает???

(За синтаксис вызова процедуры на ИБ не ручаюсь).


← →
Соловьев ©   (2004-07-21 17:29) [17]


> DataSet.Sql.Text := "begin TestProc(@PARAM1); end;";


> (За синтаксис вызова процедуры на ИБ не ручаюсь).

не знаю где - возможно в MS SQL такое канает, а в ИБ нет.
Там будет это выглядеть так
DataSet.Sql.Text := "select param_out from TestProc(:PARAM_IN)";


← →
Курдль ©   (2004-07-21 17:34) [18]


> Соловьев ©   (21.07.04 17:29) [17]
> не знаю где - возможно в MS SQL такое канает, а в ИБ нет.

А! Вот где собака порылась! :)
Я как раз и имел в виду параметры, объявленные в процедуре, как OUT или INOUT. Это для Sybase (а значит и для MS SQL) и Oracle.



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

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



Память: 0.48 MB
Время: 0.022 c
4-1089021258
kvanter
2004-07-05 13:54
2004.08.15
Версионная информация о файле


14-1090911132
Nata
2004-07-27 10:52
2004.08.15
Служба


1-1091387445
san
2004-08-01 23:10
2004.08.15
Open Excel and Edit


14-1090840734
Белый Крыс
2004-07-26 15:18
2004.08.15
Слава Одину! Неужели на форуме Игры появился модератор???


1-1091209480
Antonmm
2004-07-30 21:44
2004.08.15
Добавление программы в реестр




   Наверх