Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ошибочный SQL запрос, как остановить выполнение запроса? 
:(
    Опции темы
Apls
  Дата 1.7.2007, 14:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Весь форум пересмотрел, но ответа на свой вопрос так и не нашел.
Вообщем проблема заключается в следующем:
С помощью компонентов ADO настроил программу на работу с базой, в edit'е ввожу запрос к БД, он обрабатывается и выводит результаты в DBgrid, но если ввести неправильный SQL запрос или случайный набор символов, то программа виснет и выводится соответствующая ошибка, что типа неправильный запрос. Так вот вопрос: как до того как выскочит эта ошибка, вывести сообщение о неправильности запроса и не дать программе его выполнить?
PM MAIL   Вверх
sw04
Дата 1.7.2007, 18:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(Apls @  1.7.2007,  17:06 Найти цитируемый пост)
Так вот вопрос: как до того как выскочит эта ошибка, вывести сообщение о неправильности запроса и не дать программе его выполнить? 

посмотри, как использовать "безопасный код". 
или же..при выполнении запроса в базу необходимо проверять значение sql_error.


--------------------
<удалено администрацией>
PM   Вверх
Marduk
Дата 15.8.2007, 08:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Можно использовать try .. except и ADOCommand, на OnException сделать ADOCommand1.Cancel;
или использовать транзакции, что по-моему безопаснее
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

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

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


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


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

FAQ раздела лежит здесь!


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

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


 




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


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

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