Вниз
Скачать: CL | DM;

Как не убрать помеченые на удаление записи ?   Найти похожие ветки 

← →
SergeyI ©   (2003-07-10 09:53) [0]

Уважаемые ALL подскажите, работаю с таблицами формата дбф через ADO, после выполнения операций delete в таблице записи остаются. Как
их убрать совсем ?


← →
Соловьев ©   (2003-07-10 10:11) [1]

Deleted Двоичный индикатор, определяющий обработку ядром Microsoft Jet записей, отмеченных как удаленные. Значение 01 соответствует команде dBASE SET DELETED ON и отключает загрузку или позиционирование удаленных записей. Значение 00 соответствует команде dBASE SET DELETED OFF и указывает, что удаленные записи обрабатываются так же, как все остальные. По умолчанию задается значение 00. Значения имеют тип Binary в Windows 95 и Windows NT 4.0 или тип REG_BINARY в Windows NT 3.51


← →
Соловьев ©   (2003-07-10 10:12) [2]

Или паковать.


← →
SergeyI ©   (2003-07-10 10:25) [3]

а если паковать то как ? (не нашёл я команду, может плохо искал)


← →
Соловьев ©   (2003-07-10 10:52) [4]


> не нашёл я команду, может плохо искал

с ADO не работаю, не знаю как там пакуют... что-то слышал про pack table, но не уверен.


← →
sniknik ©   (2003-07-10 11:11) [5]

не там искал. у Jet нет такой команды, во всяком случае в SQL, в драйвере то есть
исам дбейса
используемая dll D:\WINNT\System32\msxbde40.dll
экспортируемые процедуры ..... DbiRegenIndex DbiPackTable DbiEmptyTable ......
но вот как к ним доступится... попроще? если выясниш свисти :о)).

для себя нашол гораздо более простой выход, т.к. нет постоянных упаковок после каждого удаления, а только по требованию, пункт типа "рапайр & реиндекс" то делаю так
подключаю драйвер Visual FoxPro
Provider=MSDASQL.1;Persist Security Info=False;Extended Properties="DRIVER={Microsoft Visual FoxPro Driver};UID=;SourceDB=d:\;SourceType=DBF;Exclusive=No;BackgroundFetch=Yes;Collate=RUSSIAN;Null=Yes;Deleted=Yes;"
и делаю команду
PACK TABLE Xxxxxx1
для каждой таблици, не знаю будут ли проблемы с индексами (вроде должны) но мне без разницы "реиндекс" делается удалением и пересозданием индеков.
(удаляя индексный файл можно не озабачиватся 28-м байтом(признак индекса) драйвер FoxPro снимает его автоматически при отсутствии индексного файла. естественно для упаковки требуется монопольный доступ(общепринято), т.е. нужно закрыть таблицу везде перед операцией PACK)


← →
SergeyI ©   (2003-07-10 12:34) [6]

то sniknik те в commandtext загоняешь строку PACK TABLE Xxxxxx1
и всё ?


← →
SergeyI ©   (2003-07-10 12:40) [7]

то sniknik Спасибо



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.019 c
9-100525
DeadMeat
2003-02-04 22:32
2003.07.31
GLScene и *.SMD анимация


9-100527
Antichacker
2003-02-01 09:01
2003.07.31
Давайте выкладывать сюда короткие демки по GLScene, которых нет


3-100597
urich
2003-07-09 10:30
2003.07.31
Перенос таблицы из одной БД в другую


14-100956
Rulja
2003-07-10 08:27
2003.07.31
---|Ветка была без названия|---


14-100950
neuro
2003-07-14 20:48
2003.07.31
формат evt




   Наверх