Отправляет email-рассылки с помощью сервиса Sendsay

RFpro.ru: СУБД и Delphi/Lazarus

  Все выпуски  

RusFAQ.ru: СУБД и Delphi


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / СУБД и Delphi

Выпуск № 383
от 09.08.2007, 11:35

Администратор:Gh0stik
В рассылке:Подписчиков: 337, Экспертов: 39
В номере:Вопросов: 1, Ответов: 3


Вопрос № 97313: Здравствуйте, подскажите пожалуйста, как определить есть ли поле в таблице (хочу модернизировать таблицу в случае отсутствия нужного поля)...

Вопрос № 97.313
Здравствуйте, подскажите пожалуйста, как определить есть ли поле в таблице (хочу модернизировать таблицу в случае отсутствия нужного поля)
Отправлен: 04.08.2007, 11:27
Вопрос задала: Kovri (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 3)

Отвечает: Виктор Пырлик
Здравствуйте, Kovri!

В приложении дан рабочий код.
добавлена функция-обертка, для ужобства. Принимает два параметра - имя поля и набор данных (TTable, TADOTable, TIBTable и т.д.)

Приложение:

---------
Если ничего не помогло - надо читать инструкцию

Ответ отправил: Виктор Пырлик (статус: Студент)
Ответ отправлен: 04.08.2007, 14:18

Отвечает: Shveps
Здравствуйте, Kovri!
Можно сделать запрос к этой таблице из делфи типа SELECT * FROM Table. А дальше у наследников TDataSet есть метод FindField(const FieldName: string), который возвращает true или false, в зависимости от того: существует поле или нет.
---------
Пиво ф топку !!! Водку Тоже !!!
Ответ отправил: Shveps (статус: 6-ой класс)
Ответ отправлен: 05.08.2007, 09:27

Отвечает: Mishell
Здравствуйте, Kovri!
вариант 1 - использовать функцию DataSet'а
function FindField(const FieldName: string): TField;
вариант 2 - загрузить все поля в список с пом. процедуры DataSet'а
procedure GetFieldNames(List: TStrings); virtual;
и потом искать и обрабатывать нужные поля
см. какой метод покажется Вам более подходящим

добавить же отсутствующее поле в таблицу можно например запросом:
alter table <таблица> add <поле> <тип поля> ( <размер поля> )
Ответ отправил: Mishell (статус: 4-ый класс)
Ответ отправлен: 06.08.2007, 09:47


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Email: support@rusfaq.ru, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале
Версия системы: 4.54 beta от 01.08.2007
Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное