Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.09;
Скачать: CL | DM;

Вниз

Использование IBStoredProc   Найти похожие ветки 

 
Term ©   (2005-08-29 14:06) [0]

Гдето попадалось что использовать IBStoredProc нежелательно ввиду глючности последнего, но возникла необходимость его использования. Есть аналогичный компонент в фибсах(раньше с этими компонентами не работал и не устанавливал поэтому спрашиваю), и какие есть рекомендации

Без этого компонента не обойтись


 
Term ©   (2005-08-29 14:30) [1]

народ есть кто живой, кто может просветить относительно использования этого компонента


 
Domkrat ©   (2005-08-29 14:41) [2]

ibase.ru

>В общем случае не рекомендуется к использованию, т.к. имеет >застарелую проблему с обработкой ошибок. При самостоятельном >исправлении данной ошибки в коде (IBStoredProc.pas) может быть >использован.

Ошибка описана сдесь

http://www.ibase.ru/devinfo/ibstp.htm


 
Term ©   (2005-08-29 15:13) [3]

понятно, а с фибсами как дело обстоит


 
Domkrat ©   (2005-08-29 15:47) [4]

C FibPlus все ок.


 
Карелин Артем ©   (2005-08-29 17:41) [5]

Делаем код вида Execute procedure с помощью указанного кода и не думаем о проблемах.
А вообще у меня несколько сот рабочих мест без проблем используют довольно активно сабж и проблем не было.
function GenerateSQL(Database:TIBDatabase;const SPName:string):string;
var
 Query : TIBSQL;
 input : string;
begin
 Database.InternalTransaction.StartTransaction;
 Query := TIBSQL.Create(Database);
 try
   Query.Database := DataBase;
   Query.Transaction := Database.InternalTransaction;
   Query.SQL.Text := "SELECT RDB$PARAMETER_NAME,  RDB$PARAMETER_TYPE " + {do not localize}
                      "FROM RDB$PROCEDURE_PARAMETERS " + {do not localize}
                      "WHERE RDB$PROCEDURE_NAME = " + {do not localize}
                      """" + FormatIdentifierValue(Database.SQLDialect,
                              QuoteIdentifier(Database.SQLDialect, SPName)) + """" +
                      " ORDER BY RDB$PARAMETER_NUMBER"; {do not localize}
   Query.Prepare;
   Query.GoToFirstRecordOnExecute := False;
   Query.ExecQuery;
   while (not Query.EOF) and (Query.Next <> nil) do
   begin
     if (Query.Current.ByName("RDB$PARAMETER_TYPE").AsInteger = 0) then {do not localize}
     begin
       if (input <> "") then
         input := input + ", :" +
           QuoteIdentifier(Database.SQLDialect,trim(Query.Current.ByName("RDB$PARAMETER_NAME").AsString)) {do not localize}
       else
         input := ":" +
           QuoteIdentifier(Database.SQLDialect, trim(Query.Current.ByName("RDB$PARAMETER_NAME").AsString)); {do not localize}
     end
   end;
   if Input <> "" then
     Result := "Execute Procedure " + {do not localize}
         QuoteIdentifier(Database.SQLDialect, SPName) + "(" + input + ")"
   else
     Result := "Execute Procedure " + {do not localize}
         QuoteIdentifier(Database.SQLDialect, SPName);
 finally
   Query.Free;
   Database.InternalTransaction.Commit;
 end;
end;


 
Term ©   (2005-08-29 18:02) [6]

не использование Query не подходит т.к. нужно в течении короткого времени пересадить приложение на FB, в приложении полно TADOStoredProc, время просто поджимает



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

Текущий архив: 2005.10.09;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.013 c
1-1126513281
Yozch1
2005-09-12 12:21
2005.10.09
Максимизация окна


6-1118748923
atmospheric
2005-06-14 15:35
2005.10.09
Отправка сообщения конкретному клиенту?


4-1123172300
readme
2005-08-04 20:18
2005.10.09
добавить пункт в контекстное мннею


14-1127307480
Juice
2005-09-21 16:58
2005.10.09
Чего посоветуете для отчетов?


2-1125430875
Дмитрий_05
2005-08-30 23:41
2005.10.09
Проблемы с функцией AnimateWindow





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский