Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.08.22;
Скачать: [xml.tar.bz2];

Вниз

база DBase   Найти похожие ветки 

 
alexela   (2002-08-03 21:10) [0]

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


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

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


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

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


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

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


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

Либо, если все-таки с 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;



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.08.22;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.007 c
3-70956
NoSerge
2002-08-01 23:21
2002.08.22
транзакция read_committed не видит изменений


6-71284
edvin
2002-06-10 17:26
2002.08.22
Disconnect в Сокетах


6-71282
KPY
2002-06-11 06:14
2002.08.22
Помогите с алгоритмом


14-71320
Lola
2002-07-26 15:25
2002.08.22
Сегодня Международный день Сисадмина!


1-71155
Spooky
2002-08-13 14:28
2002.08.22
Регистр символа





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский