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

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

база DBase [D5, dBase, FoxPro]


alexela ©   (2002-08-03 21:10:00) 

Привет, всем! Может я чего пропустил, но вопрос таков. У меня в таблице (типа
DBase IV)есть удаленные записи.На самом деле они только помечены на удаленияе,т.
е. не видны в DBGreed, хотя в физической таблице присутствуют и поэтому путают
прогу, например, при подсчете количества записей. Можно ли программно выловить
эти записи, а потом вернуть им исходный атрибут ( снять метку на удаление)? Или
удалить конкретную, имеющую метку на удаление, запись, не трогая другие "удален
-ные"? Метод PakTable грохает все удаленные записи.
Иначе : можно ли в таблице программно восстановить удаленные записи?
С уважением.


ValWhite   (2002-08-04 14:28:00) [1]

Либо, если все-таки с BDE, делай как советует Jeer- DbiUndeleteRecord
Пример из хэлпа:
procedure fDbiUndeleteRecord(dBASETbl: TTable);
var
CProps: CurProps;
begin
Check(DbiGetCursorProps(dBASETbl.Handle, CProps));
// Raise an EDBEngineError exception if the table is not dBASE
if (StrIComp(CProps.szTableType, szDBASE) <> 0) then
raise EDBEngineError.Create(DBIERR_NOTSUPPORTED);
// Raise an EDatabaseError exception if the cursor does not have soft deletes on
if (CProps.bDeletedOn = False) then
raise EDatabaseError.Create("Soft deletes is not on");

Check(DbiUndeleteRecord(dBASETbl.Handle));
end;


ValWhite   (2002-08-04 14:19:00) [2]

В компоненте THalcyonDataSet(работет с таблицами DBASE напрямую без BDE) есть метод Recall. Восстанавливает запись, помеченную как удаленная. Также есть свойство UseDeletedопределяет показывать ли записи, помеченные как удаленные.


Jeer   (2002-08-03 22:02:00) [3]

DbiUndeleteRecord поищи ссылки


Anatoly Podgoretsky   (2002-08-03 21:35:00) [4]

Они не путают, так как учитываются при подсчете. Выловить можно, но идея с аттрибутом дикая.


Наверх

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