Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Добавить поле в dbf 
:(
    Опции темы
mspuz
Дата 11.8.2005, 12:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Мне нужно найти все папки, в директории, затем в папках найти все dbf файлы, и в каждый dbf файл добавить поле и заполнить его названием папки в которой я его нашел и затем перекинуть этот файл в общую папку. Так вот я могу сделать все...кроме - как добавить поле в файл dbf?
PM MAIL   Вверх
Marriage
Дата 11.8.2005, 19:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Компонента есть ..
TDbf ...
Попробуй ее ...


--------------------
Praemonitus, praemunitus
PM MAIL ICQ   Вверх
SergeBS
Дата 14.8.2005, 15:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1111
Регистрация: 10.6.2005
Где: Владимир

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



Цитата

Программное добавление поля, Ошибка ODBC

Сам себя цитирую:
Цитата

народ, не морочьте себе головы. MS SQL, например, при изменении структуры таблицы вначале переливает все данные во временную таблицу, затем в пустой меняет структуру, а потом перекачивает данные обратно. И так IMHO происходит везде - с Фокса 2.6 по ORACLE. Именно поэтому нужен монопольный доступ к изменяемой таблице и т.п. Отсюда мораль: если не хочется головной боли - создавать новую таблицу с добавленным полем, в нее перекачивать данные, с ней работать, а затем грохать эту таблицу. Лично я так и делаю. А если надо навсегда изменить структуру - так просто не грохать таблицу, а грохнуть предка, а таблицу переименовать. По-другому все равно не получится. Это если программно, а не ручками.
Сомневающиеся могут попробовать изменить структуру таблицы (например добавить какое-либо поле - к потере данных не ведет) "на ходу" любым подручным средством на любом серваке (может быть кроме InterBase, и то вряд ли, версионность тут IMHO не прокатит). Вопли юзеров гарантирую smile.
2 вариант - посмотреть, что реально происходит при alter table - ну тут зависит от того, чем меняем. В Лисе это отследить было практически невозможно (на небольших таблицах). А сервак честно доложит, если попросить, что он _заменил_ таблицу другой - с другой структурой и перекачанными данными.
У меня как-то изменение структуры минуты заняло на совсем даже маленькой табличке (около 1 МБ) - преобразование хитрое было.

И какие компоненты ни бери - все будет именно так. Т.е. хочешь добавить поле - делай новую таблицу с добавленным полем, перекачивай туда данные, грохай предка и переименовывай. Другого способа нет. И быть не может для DBF.
PM MAIL   Вверх
mspuz
Дата 15.8.2005, 13:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



SergeBS Спасибо. Я так и делаю, но думал, что это глупо (а быть глупым ох как не хочется smile ).
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "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.0401 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


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

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