Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.02.2011, 13:47   #1
Damien_kz
 
Регистрация: 28.07.2010
Сообщений: 5
Сообщение Инвентаризационная база

Доброго времени. Есть локальная база данных по инвентаризации компьютеров, база формата mdb(Access), механизм доступа к таблицам по средствам ADO, использую компонент АДОТабле. Пока имеются 2 таблицы, 1я главная, 2я подчиненная. Так как со временем компы будут списываться, то, есть необходимость создать еще одну таблицу, к примеру "Списанные". В приложении добавить кнопку "На списание", после нажатия данной кнопки записи из 1ой и 2ой таблиц должны будут с вырезанием переместится в таблицу "Списанные". Помогите все это грамотно реализовать, чтобы в последствии при увеличении записей в таблицах, не сыпались траблы. Прошу Вас объяснять, на начальном уровне =).
Damien_kz вне форума Ответить с цитированием
Старый 26.02.2011, 16:21   #2
asmodey1
Подтвердите свой е-майл
 
Регистрация: 19.12.2010
Сообщений: 808
По умолчанию

Зачем третья таблица ?
Просто булевское поле списан/не списан в таблице компов...
asmodey1 вне форума Ответить с цитированием
Старый 26.02.2011, 16:26   #3
_SERGEYX_
Участник клуба
 
Аватар для _SERGEYX_
 
Регистрация: 07.07.2007
Сообщений: 1,518
По умолчанию

Имхо, не так это делается...
1. Добавь в главную таблицу числовое поле SPISANO (default = 0)
2. Замени АДОТабле на ADOQuery.
3. Загружай таблицу так...
Код:
select from ...... where SPISANO = 0
4. Когда комп списывается - меняешь в поле SPISANO ноль на единицу.
5. Если нужно посмотреть списанные - делаешь запрос
Код:
select from ...... where SPISANO = 1
... ну, вроде, понятно объяснил.
А плодить лишние таблицы - не айс.
Можно, конечно, и без запроса в таблицу фильтр установить, но это плохой тон. Фильтры работают медленно и "косячно" по сравнению с sql-запросом.

Последний раз редактировалось _SERGEYX_; 26.02.2011 в 16:28.
_SERGEYX_ вне форума Ответить с цитированием
Старый 26.02.2011, 21:53   #4
alexvav
Форумчанин
 
Регистрация: 23.11.2006
Сообщений: 152
По умолчанию

и добавь не только булевское поле, но и дату списания.
alexvav вне форума Ответить с цитированием
Старый 26.02.2011, 22:34   #5
asmodey1
Подтвердите свой е-майл
 
Регистрация: 19.12.2010
Сообщений: 808
По умолчанию

и причину
asmodey1 вне форума Ответить с цитированием
Старый 27.02.2011, 19:03   #6
Damien_kz
 
Регистрация: 28.07.2010
Сообщений: 5
По умолчанию

_SERGEYX_,asmodey1, alexvav, ребята, огромнейшее всем спасибо!!! Очень помогли! =)
Damien_kz вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
База данных Katia123 Помощь студентам 0 29.06.2010 15:46
Сумашедшая база vivera4163 Microsoft Office Access 3 28.06.2010 22:33
Небольшая база в Open Office База данных. sashaman Фриланс 3 11.04.2010 20:13
База данных Bariy47 Фриланс 13 22.02.2010 22:18