![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Delphi/C++/C#
Участник клуба
Регистрация: 29.10.2006
Сообщений: 1,972
|
![]()
bafy
Подскажите, пожалуйста, как программно определить, есть ли в базе (DBF-ка) поле с определенным именем. Другими словами, на входе мне нужно знать есть такое поле или нет. Как это сделать? oliver var i:integer; begin for i:=0 to DBGrid1.FieldCount do begin if DBGrid1.Fields[i].Text=Edit1.Text then begin ShowMessage('Такое поле есть '); exit; end; end; end; |
![]() |
![]() |
![]() |
#2 |
Новичок
Джуниор
Регистрация: 10.11.2006
Сообщений: 1
|
![]()
Вам нужно обратиться к самому набору данных, а не к компоненту DBGrid. Через ADO это выглядит так:
MyTable.getfieldnames (list: tstring); в параметр list вернётся полный список имён полей таблицы |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 06.11.2006
Сообщений: 51
|
![]()
Можно использовать метод if Table.Locate('Pole', pole, [loCaseInsensitive]) then else shoowmessage('Данных нет'), где pole-искомое значение/текст. Поиск остановится на первой найденной соответствующей записи, а если нет ничего то перейдет по else
|
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 06.11.2006
Сообщений: 51
|
![]()
Прошу прощения. Метод Locate следует использовать для поиска записи по существующему полю. А если поля нет в базе то получим ошибку, которую можно перехватить и обработать.
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Фильтр в базе | Versifikator | БД в Delphi | 3 | 18.04.2008 10:35 |
Поиск по базе данных | ERASERROR | БД в Delphi | 4 | 14.03.2008 16:34 |
Поиск по базе | Антон Шестаков | БД в Delphi | 1 | 22.01.2008 20:32 |
Вычисляемое поле в базе | VVVadim | БД в Delphi | 3 | 27.09.2007 08:20 |
Поиск по базе | Таня84 | БД в Delphi | 3 | 09.02.2007 10:53 |