Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.03.2017, 09:53   #11
cherry25
Форумчанин
 
Регистрация: 16.02.2009
Сообщений: 110
По умолчанию

Цитата:
Сообщение от xxbesoxx Посмотреть сообщение
Почитал бы про создание (процедуры, функции и там ещё есть пакеты) потренировал и сделал бы его нормально.! из клиентское приложение делать (Commit и RallBack) это не хорошо...
можно поподробнее? что лучше использовать? Обычно делаю CommitUpdates и CancelUpdates. Там в параметрах указываются конкретные датасеты, к которым нужно применить свойство.
cherry25 вне форума Ответить с цитированием
Старый 23.03.2017, 12:42   #12
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

Цитата:
Сообщение от cherry25 Посмотреть сообщение
можно поподробнее?
На пример создают процедур на INSERT
Код:
CREATE OR REPLACE PROCEDURE Sal_ins -- Имя процедур
       (
	   p_date IN Table_name.date%TYPE,
	   p_name IN Table_name.name%TYPE,
	   p_kolvo IN Table_name.kolvo%TYPE,
	   p_Cena IN Table_name.Cena%TYPE
	 )
IS
BEGIN
  INSERT INTO Table_name ("date", "name", "kolvo", "Cena")
  VALUES (p_date, p_name, p_kolvo, p_Cena);
  COMMIT;
END;
Потом можно это процедур вызвать и передать ЧТО_ТО ) вот так примерно
Код:
procedure TFrmMain.cxButton1Click(Sender: TObject);
begin
  if  (Edit1.Text<>'') and (Edit2.Text<>'') and (Edit3.Text<>'') and (cxDateEdit1.Text<>'')
  then
   begin
    with OraStoredProc1 do
   begin 
     Params.Clear;
     StoredProcName := 'Sal_ins' ;
     Prepare;
     ParamByName('p_date').Values := cxDateEdit1.Date;
     ParamByName('p_name').Values :=  Trim(Edit1.Text);
     ParamByName('p_kolvo').Values := Trim(Edit2.Text);
     ParamByName('p_Cena').Values := Trim(Edit3.Text);
     ParamByName('p_Proizvoditel').Values := Trim(Edit4.Text);
     Execute;
	 // если надо 
     Application.MessageBox('Новая запись успешно добавлено','сообщения');
     OraQuery1.Refresh;
  end
   else
  begin
       MessageDlg('Обязательно заполните все поля пожалуйста !',mtWarning, [mbOK], 0);
  end;

end;
xxbesoxx вне форума Ответить с цитированием
Старый 23.03.2017, 14:00   #13
Vapaamies
Ваш К. О.
Участник клуба
 
Аватар для Vapaamies
 
Регистрация: 26.12.2012
Сообщений: 1,767
По умолчанию

Цитата:
Сообщение от cherry25 Посмотреть сообщение
Добрый день! Подскажите, пожалуйста, в чем ошибка. Вызываю данные на экран через TOraDataSet - select for update.
TOraDataSet -- полагаю, что это ODAC. В нем есть встроенный механизм управления select for update -- свойство LockMode, если не путаю. Прочитайте в справке, какое значение за что отвечает.
Vapaamies вне форума Ответить с цитированием
Старый 28.03.2017, 07:33   #14
cherry25
Форумчанин
 
Регистрация: 16.02.2009
Сообщений: 110
По умолчанию

спасибо!
cherry25 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Программа продолжает работать после закрытия a.n.o.n.i.m C# (си шарп) 7 29.11.2015 01:53
Ноутбук не просыпается после закрытия крышки CodeNOT Linux (Ubuntu, Debian, Red Hat, CentOS, Mint) 2 18.11.2015 12:01
Висит приложение после закрытия STRELOK-2007 Общие вопросы Delphi 4 07.11.2014 18:25
Зацикливание открытия, после закрытия GWolf Microsoft Office Excel 6 09.11.2012 11:45
Можно ли после аварийного закрытия приложения внести/удалить запись из файла Ramires Общие вопросы Delphi 9 06.08.2008 10:38