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

Вниз

Как можно упаковать таблицу Paradox   Найти похожие ветки 

 
yaric   (2003-08-09 13:24) [0]

Подскажите как можно упаковать таблицу Paradox в своей проге, как это делает DatabaseDesktop когда ставиш галку Pack table
:-)При интенсивной работе таблица страшно разростается, хотя данные удаляются, а размер базы все растет и растет ...
Помогает только в DatabaseDesktop Pack table.


 
Anatoly Podgoretsky   (2003-08-09 14:13) [1]

dbiDoRestructure
Хотя для Парадокс это лишнее и даже вредное. Место используется повторно.


 
yaric   (2003-08-09 14:24) [2]

dbiDoRestructure - это где и откуда
Я использую Delphi и BDE
>А насчет "Место используется повторно", я что-то сомневаюсь что у меня так это работает - записи удаляются и добавляю примерно такоеже количество как было удалено, а база увеличивается в два раза и так пока не сделаеш Pack table.


 
sniknik   (2003-08-09 14:35) [3]

Anatoly Podgoretsky © (09.08.03 14:13)
> Хотя для Парадокс это лишнее и даже вредное. Место используется повторно.
бывают исключения. один раз сталкивался, типа говорит таблица переполнена (мах 128мг) но через раз, т.е. ошибка а при повторной записи проходит. сначала думал действительно переполнение, структуру поменять (на 256 или даже больше, очень уж быстро переполнилась). а как то на автомате сделал упаковку осталось гдето 4-8мг(!!!), т.е. явно глюк какойто был место не использовалось. (не BDE, это на обменном файле кассовой программы супермаг DOS)
почти сразу пожалел, что не сохранил глючный файл, больше не встречалось.

yaric (09.08.03 14:24)
может ты таблици без ключа(главный индекс) используеш? в этом случае может быть.


 
Anatoly Podgoretsky   (2003-08-09 15:13) [4]

Глюк или поврежления таблиц конечно могут объяснить подобное поведение, я надеюсь он про .db файл говорит. Но вообще то я думаю, что реструктиризация устраняет большинство ошибок этого рода. Я как то спрашивал, относится ли повторное использование к .mb файлу или нет, но точного ответа не получил, сам я не использую Парадокс из за его недостатков и по ряду других причин.


 
Anatoly Podgoretsky   (2003-08-09 15:15) [5]

Насчет индекма, работать с Парадоксом без первичного ключа конечно можно, но сильно не рекомендуется.


 
Семен Сорокин   (2003-08-09 16:14) [6]

function ReindexBase(aDB: TDatabase): boolean;
var
_i : integer;
_list: tStrings;
begin
Result := true;
aDB.CloseDataSets;
_list := tStringList.Create;
try
Session.GetTableNames(aDB.DatabaseName, "*.db", false, false, _list);
for _i := 0 to _list.Count - 1 do
with TTable.Create(nil) do
try
DatabaseName := aDB.DatabaseName;
TableType := ttParadox;
Exclusive := true;
TableName := _list[_i];
try
Active := true;
Check(dbiRegenIndexes(Handle));
except
on E: Exception do begin
MessageDlg("


 
yaric   (2003-08-09 21:17) [7]

Первичный ключ у меня есть (тип автоинкримент)
В размере растет *.db файл
Попробую то что посоветовал Семен Сорокин, т.к. кроме непомерного роста, таблицы работают нормально
Пробовал даже создавать таблицу заново - тот же эффект, кстати такое творится со всеми таблицами в базе.



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

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

Наверх





Память: 0.46 MB
Время: 0.01 c
14-1626
Layner
2003-08-13 14:11
2003.09.01
Кто защищался от W32.Blaster.Worm, и скачал заплату с сайта


1-1437
Vt
2003-08-19 04:20
2003.09.01
Какой ListView виден


1-1393
AZ
2003-08-16 09:09
2003.09.01
EOF для СОМ-порта


1-1417
DelphiNew
2003-08-19 15:51
2003.09.01
Печать


14-1604
Ajax
2003-08-13 00:02
2003.09.01
Сотовая связь в Питере





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский