Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как правильно обработать выполненный запрос, написания сообщения о выполнении действи 
:(
    Опции темы
osmus
Дата 12.1.2009, 23:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 12.6.2008

Репутация: нет
Всего: нет



Вот я делаю такой запрос:

 ADOQuery1->Close();
   ADOQuery1->SQL->Clear();
   ADOQuery1->SQL->Add("INSERT INTO `garages`(  id_owners, number, street, g_type, size, sdan_expluat) VALUES (:Prm1, :Prm2, :Prm3, :Prm4, :Prm5, :Prm6)");
   ADOQuery1->Parameters->ParamByName("Prm1")->Value = Edit_2->Text;
   ADOQuery1->Parameters->ParamByName("Prm2")->Value = MaskEdit1->Text;
   ADOQuery1->Parameters->ParamByName("Prm3")->Value = ComboBox1->Text;
   ADOQuery1->Parameters->ParamByName("Prm4")->Value = DBLookupComboBox1->Text;
   ADOQuery1->Parameters->ParamByName("Prm5")->Value = MaskEdit2->Text;
   ADOQuery1->Parameters->ParamByName("Prm6")->Value = DateToStr(DateTimePicker3->Date);
   ADOQuery1->ExecSQL();

Мне нужно пользователю выдать сообщение: записть сохранена, или введенная запись существует....
Как я это могу сделать, и при этом чтобы не вываливалость это ужасное критическое сообщение (dublicated index........)
Заранее благодарен smile 
PM MAIL   Вверх
orthrus
Дата 13.1.2009, 05:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 400
Регистрация: 30.10.2007
Где: г. Усть-Илимск(Ир кутская обл.)

Репутация: 4
Всего: 16



Используй конструкцию try ... catch для отлова ошибок при выполнении запроса. Примерно так:
Код

try{
   ADOQuery1->Close();
   ADOQuery1->SQL->Clear();
   ADOQuery1->SQL->Add("INSERT INTO `garages`(  id_owners, number, street, g_type, size, sdan_expluat) VALUES (:Prm1, :Prm2, :Prm3, :Prm4, :Prm5, :Prm6)");
   ADOQuery1->Parameters->ParamByName("Prm1")->Value = Edit_2->Text;
   ADOQuery1->Parameters->ParamByName("Prm2")->Value = MaskEdit1->Text;
   ADOQuery1->Parameters->ParamByName("Prm3")->Value = ComboBox1->Text;
   ADOQuery1->Parameters->ParamByName("Prm4")->Value = DBLookupComboBox1->Text;
   ADOQuery1->Parameters->ParamByName("Prm5")->Value = MaskEdit2->Text;
   ADOQuery1->Parameters->ParamByName("Prm6")->Value = DateToStr(DateTimePicker3->Date);
   ADOQuery1->ExecSQL();
   Application->MessageBoxA("Запрос выполнен","Инфо",MB_OK | MB_ICONINFORMATION);
}
catch(...){
   Application->MessageBoxA("Ошибка","Инфо",MB_OK | MB_ICONWARNING);
}

В блоке catch укажешь тип исключения которое происходит у тебя и обрабатывай его

Это сообщение отредактировал(а) orthrus - 13.1.2009, 05:16


--------------------
У того, кто ничего не делает, всегда много помощников.© Л.Н. Толстой
user posted image
PM MAIL ICQ   Вверх
mrbrooks
Дата 13.1.2009, 08:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



osmus, У ADOQuery уйма событий. Там для тебя все есть. Работай с ними.

PM MAIL   Вверх
osmus
Дата 13.1.2009, 08:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 12.6.2008

Репутация: нет
Всего: нет



Цитата(mrbrooks @ 13.1.2009,  08:41)
osmus, У ADOQuery уйма событий. Там для тебя все есть. Работай с ними.

А можно информацию, где можно посмотреть о событиях ADOQuery?
PM MAIL   Вверх
mrbrooks
Дата 13.1.2009, 09:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



Цитата(osmus @  13.1.2009,  08:55 Найти цитируемый пост)
А можно информацию, где можно посмотреть о событиях ADOQuery? 

конечно. в хелпе все расписано.
PM MAIL   Вверх
osmus
Дата 13.1.2009, 11:28 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 12.6.2008

Репутация: нет
Всего: нет



Если бы все бы читали хелп. То подобных форумов бы не существовало!
PM MAIL   Вверх
mrbrooks
Дата 13.1.2009, 11:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



Цитата(osmus @  13.1.2009,  11:28 Найти цитируемый пост)
Если бы все бы читали хелп. То подобных форумов бы не существовало! 

А что ты предлагаешь. Все сделать за тебя - такого классного пацана? Ты со специальностью не ошибся? Тебе дали направление куда двигаться, вот и двигайся. Вместо того что бы здесь лить воду поискал бы литературу, если с английским плохо. Благо ее навалом.
В данном случае подойдут книги и по дельфятине - VCL он и в авфрике VCL.
PM MAIL   Вверх
osmus
Дата 13.1.2009, 12:37 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 12.6.2008

Репутация: нет
Всего: нет



Зачем мне товое направление, это направление я прикрасно знаю (это типа я не знаю, или меня харит писать, иди ты короче на хелп)... Стандартный ответ всех умников, которые не знают как ответить, или не с той ноги утром встали...

Вот же лень кинуть пару кусков кода.. 
PM MAIL   Вверх
mrbrooks
Дата 13.1.2009, 13:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



Цитата(osmus @  13.1.2009,  12:37 Найти цитируемый пост)
Стандартный ответ всех умников, которые не знают как ответить, или не с той ноги утром встали...

хам.
PM MAIL   Вверх
osmus
Дата 13.1.2009, 14:44 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 12.6.2008

Репутация: нет
Всего: нет



Цитата(mrbrooks @ 13.1.2009,  13:40)
Цитата(osmus @  13.1.2009,  12:37 Найти цитируемый пост)
Стандартный ответ всех умников, которые не знают как ответить, или не с той ноги утром встали...

хам.

Не че рисоватся когда не чем не можешь помочь!
PM MAIL   Вверх
Данкинг
Дата 13.1.2009, 14:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



Цитата(osmus @  12.1.2009,  23:39 Найти цитируемый пост)
Мне нужно пользователю выдать сообщение: записть сохранена, или введенная запись существует....

Ну так делай по базе поиск записи предварительно.  smile  Если найдена, то выводишь мессагу и выходишь из функции.

Цитата(osmus @  13.1.2009,  11:28 Найти цитируемый пост)
Если бы все бы читали хелп. То подобных форумов бы не существовало! 

Как форумов не существовало бы? А тогда где же жаловаться "я прочитал "хелп", но ничего там не понял"?  smile 

Цитата(osmus @  13.1.2009,  12:37 Найти цитируемый пост)
Стандартный ответ всех умников, которые не знают как ответить, или не с той ноги утром встали...

smile  Ты, видимо, со средней встал.   smile  smile

Добавлено @ 14:47
Цитата(osmus @  13.1.2009,  14:44 Найти цитируемый пост)
Не че рисоватся когда не чем не можешь помочь! 

Пиши по-русски. smile 

Это сообщение отредактировал(а) Данкинг - 13.1.2009, 14:48


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
mrbrooks
Дата 13.1.2009, 14:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



погорячился  smile 

Это сообщение отредактировал(а) mrbrooks - 13.1.2009, 15:21
PM MAIL   Вверх
osmus
Дата 17.1.2009, 20:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 12.6.2008

Репутация: нет
Всего: нет



Разве так было тяжело написать:

ADOQuery->RowsAffected.....

А не выпендриваться......... smile 



Это сообщение отредактировал(а) osmus - 18.1.2009, 14:56
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0550 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.