Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как проверить существует ли столбец в БД? [D6, dBase, FoxPro]


Alex_C ©   (2002-02-05 14:06:00) 

Необходимо вставить новый столбец в таблицу БД (dBase), как проверить перед этим его существование?
Всем спасибо!


Фэ   (2002-02-05 18:00:00) [1]

To Johnmen ©
Ответ не тебе был персонально. Широковещательный.
Вопрос прозвучал о реструктуризации (см) а не "как мне в гриде втавить новую колонку".
К сожалению иногда к справкам легче послать, иначе хочется еще дальше.
Всего наилучшего !


Johnmen   (2002-02-05 16:21:00) [2]

>Фэ © : Ты верно сказал. Хотя нигде не упомянуто о задаче отображения. И если рассматривать самый общий случай использования TTable, то см. выше.
Извини, но не надо отсылать меня к справкам, это некрасиво...
Тем более, что все справки уже давно прочитаны... ;o)


Фэ   (2002-02-05 16:11:00) [3]

Задачи отображения и реструктуризации - разные задачи.
Отсюда и подход разный д.б.


Johnmen   (2002-02-05 16:04:00) [4]

>Фэ © : Если прописан FieldEditor и там не прописано поле,
то хрен ты его if FindField("CustNo") <> nil then


Delirium   (2002-02-05 15:56:00) [5]

>Johnmen
А как-же .FindField("MyField")<>nil?


Alex_C   (2002-02-05 15:56:00) [6]

Фэ! Благодарствую! Справка уже не воспринимается, у меня уже 22:54, с 8:00 не отходил от компа! Проблема решена, всем БОЛЬШОЕспасибо, пошел спать, завтра буду писать прогу дальшею, появятся новые вопросы ... идеи ...

Alex_C


Фэ   (2002-02-05 15:50:00) [7]

Проверка
if FindField("CustNo") <> nil then..


Фэ   (2002-02-05 15:49:00) [8]

Справку читать надо на сон чаще.

with Table1 do
begin
{ This is the safe way to change "CustNo" field }
FindField("CustNo").AsString := "1234";
{ This is *not* the safe way to change "CustNo" field }
Fields[0].AsString := "1234";
end;


Johnmen   (2002-02-05 15:43:00) [9]

Нету.


Alex_C   (2002-02-05 15:39:00) [10]

Alexts!
Может быть есть что-то вроде: Table1.Field...Exis?


alexts   (2002-02-05 15:12:00) [11]

Может так

p:=flase;
for i := 0 to DataSet.Filds.Count-1 do
if DataSet.Fields[i].name="имя твоего поля"
then begin
break;
p:=true;
end
if not p
then begin
//Вставка поля
end;


Alex_C   (2002-02-05 15:01:00) [12]

Вячеслав! Самое интересное, что новый столбец я добавляю в существующую базу данных, с помощью SQL: ALTER TABLE ... и т.д., конструкцией try ... except обработать не удается, вылетает ошибка, наверняка есть возможность сделать средствами делфи?


Вячеслав   (2002-02-05 14:14:00) [13]

Попробуй так
try
тут попробуй вставить свой столбец
except
тут обработай возможную ошибку
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо