Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
1 / 1 / 0
Регистрация: 15.04.2013
Сообщений: 42

Условия на корректность базы данных Access

29.12.2013, 18:11. Показов 758. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужна проверка, которая будет проверять корректность базы данных Access
Другими словами. Для подключения бд я использую компонент ADOConnection1
If база данных не является её (например переименовав текстовый документ в Groups.mdb) then бла бла бла
Если проверок не делать, то выскакивает стд. ошибка, что база данных не корректная. Мне этой ошибки не надо.

Добавлено через 2 часа 2 минуты
Или можно сделать как то такую проверку?
Delphi
1
if (ADOConnection1.Connected:=True)=False then Exit;
Конструкция конечно же тут неправильная, но суть в том что при ADOConnection1.Connected:=True как раз и подключается наша база данных, если она не сможет подключиться, то значение сбрасывается на False.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.12.2013, 18:11
Ответы с готовыми решениями:

Запуск макроса при выполнении условия из базы данных Access 2007
Есть миссия, цель которой создание базы данных на небольшом предприятии, помимо данных о персонале, есть таблица с датой выдачи ЭЦП и ее...

VBA - MS Access проверка на корректность введенных данных
Доброго времени суток. В бд есть таблицы: Заказы, Клиенты, Туры. Из них создана ленточная форма с полями: код заказа, код клиента, код...

Создание базы данных, открытие из под одной базы данных MS Access
Здравствуйте. В общем, C# начал заниматься только вот и сразу была поставлена задача создать базу данных. Идея есть, при открытие программы...

5
 Аватар для HyperZen
498 / 251 / 56
Регистрация: 16.06.2011
Сообщений: 904
29.12.2013, 19:12
Delphi
1
2
3
4
5
try
...
except
...
end;
1
1 / 1 / 0
Регистрация: 15.04.2013
Сообщений: 42
30.12.2013, 23:36  [ТС]
HyperZen,
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
procedure TForm2.FormShow(Sender: TObject);
var
  I:Integer;
begin
    ADOQuery1.SQL.Clear;
    ADOQuery1.SQL.Add('SELECT ID FROM ');
    ADOQuery1.SQL.Add('Questions');
  Try
    ADOQuery1.Active:=True;
  Except
    Exit;
  end;
 
  Memo1.Lines.Clear;
  for I:=1 to ADOQuery1.RecordCount do
  begin
    Memo1.Lines.Add(ADOQuery1.Fields[0].AsString);
    ADOQuery1.Next;
  end;
end;
Почему то вылетает ошибка на ADOQuery1.Active:=True; ведь по идеи он просто должен остановить дальнейшую проверку. Ошибка в плане, что не найдено поле Questions
0
 Аватар для HyperZen
498 / 251 / 56
Регистрация: 16.06.2011
Сообщений: 904
02.01.2014, 14:11
Значит сам запрос выполняется неправильно.
Лучше будет, если Вы заключите все, что касается ADOQuery в логические скобки try..except:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
procedure TForm2.FormShow(Sender: TObject);
var
  I:Integer;
begin
  Try
    ADOQuery1.SQL.Clear;
    ADOQuery1.SQL.Add('SELECT ID FROM ');
    ADOQuery1.SQL.Add('Questions');
    ADOQuery1.Active:=True;
  Except
    Exit;
  end;
 
  Memo1.Lines.Clear;
 
  ADOQuery1.First;
 
  while not ADOQuery1.Eof do
  begin
    Memo1.Lines.Add(ADOQuery1.Fields[0].AsString);
    ADOQuery1.Next;
  end;
end;
Оператор исключения будет отрабатывать нормально вне IDE (запустите скомпилированный exe-файл отдельно).

И код ошибки лучше бы увидеть полностью.
0
1 / 1 / 0
Регистрация: 15.04.2013
Сообщений: 42
02.01.2014, 16:28  [ТС]
HyperZen, спасибо, сейчас все работает правильно. Хотя я так пробовал ранее, но ошибка была...
Пользуясь случаем, хотел узнать для чего нам ADOQuery1.First; в начале? (без него тоже вроде как работает)
И что значит Eof ? заранее спасибо.
0
 Аватар для HyperZen
498 / 251 / 56
Регистрация: 16.06.2011
Сообщений: 904
03.01.2014, 11:09
First - чтобы курсор точно стоял на первой записи в выборке.
Eof - если примерно, то "пока не конец" выполнять действия...
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.01.2014, 11:09
Помогаю со студенческими работами здесь

Условия создания базы данных
Стоит ли создавать базу данных из одной таблицы или можно обойтись вордовском таблицей? В таблице 5 полей: номер, ФИО сотрудника,...

VC++. Базы данных Access 97 -> Access 2000
Может кто подскажет, как использовать базу данных, созданную в Access 97, если на PC установлен Access 2000. Если можно, приведите пож-та,...

БД Access: Несоответствие типов данных в выражении условия отбора
при запуске приложения н еработают кнопки удаления и редактирования пмогите разобраться.Вылетает ошибка "Несоответствие типов данных...

Слияние с WORD базы данных ACCESS (изменение вида передачи данных)
Уважаемые знатоки! В VBA новичок, прошу помощи, очень надо.

Не открывается база данных Access , пишет неразпознаваемый формат базы данных
Не открывается база данных Access , пишет неразпознаваемый формат базы данных,что делать


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru