Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.21;
Скачать: CL | DM;

Вниз

Сбои в БД   Найти похожие ветки 

 
grifon_nn   (2003-06-25 11:26) [0]

Такая проблема: у клиента иногда бывают глюки со светом, поэтому база периодически рушится. Можно ли уберечься от этой беды. ИБП не предлагать - знаю. Сам их уговариваю купить.
Рушится похоже файл с индексами.


 
bushmen ©   (2003-06-25 11:32) [1]

Ты сам ответил на свой вопрос :)


 
Stas ©   (2003-06-25 11:34) [2]

Переиндексировать базу.


 
Соловьев ©   (2003-06-25 11:37) [3]


> ИБП не предлагать - знаю. Сам их уговариваю купить.

странный клиент однако... а если у него комп сгорит, а в это время твоя прога работала - он на тебя все спишет? ИМХО, клиент виноват, что не может обеспечить работоспособность своей техники, ну а с индексами попробуй, но все равно, данные и без этого могут пропасть... UPS - однозначно нужен!


 
grifon_nn   (2003-06-25 11:57) [4]

to Stas: а подскажите как это можно сделать, пожалуйста.
to Соловьев: Это понятно, что клиент виноват. Уже не один раз им говорил, что если что случится с данными - я не отвечаю, им пофиг.


 
Stas ©   (2003-06-25 12:10) [5]

Читай в хэлпе BDE32


 
Dred2k ©   (2003-06-25 12:15) [6]

http://www.torry.net/apps/utilities/database/dbdoctor.zip


 
Stas ©   (2003-06-25 12:15) [7]

Из хелпа

procedure fDbiRegenIndexes(TblName: TTable);

begin
Check(DbiRegenIndexes(TblName.Handle));
end;
или
procedure fDbiAddIndex3(Tbl: TTable);

var
NewIndex: IDXDesc;
begin
if not Tbl.Exclusive then
raise EDatabaseError.Create
("TTable.Exclusive must be set to true in order to " +
"add an index to the table");
with NewIndex do begin
szName := "NewIndex";
iIndexId := 0;
bPrimary := False;
bUnique := TRUE;
bDescending := True;
bMaintained := True;
bSubset := False;
bExpIdx := False;
iFldsInKey := 1;

aiKeyFld[0]:= 2;
bCaseInsensitive := True;
end;
Check(DbiAddIndex(Tbl.dbhandle, Tbl.handle, PChar(Tbl.TableName), szParadox, NewIndex, nil));
end;


 
Anatoly Podgoretsky ©   (2003-06-25 21:07) [8]

Эти данные ничего не стоят, их можно смело удалять не дожидаясь пропадания питания.


 
Anatoly Podgoretsky ©   (2003-06-25 21:10) [9]

grifon_nn (25.06.03 11:26)
Да за каждый вызов по востановлению индексов требовать оплату в тройном размере и деньги вперед.


 
Dred2k ©   (2003-06-25 21:18) [10]


> Anatoly Podgoretsky © (25.06.03 21:10)

А что, неплохо. Парадокс как средство перманентного обогащения!
;)


 
Anatoly Podgoretsky ©   (2003-06-25 21:35) [11]

Давно такая методика используется, за все надо платить, так что лучше ситуации и не придумать.


 
grifon_nn   (2003-06-26 00:21) [12]

Спасибо за советы.
Ну хорошо, восстановлю я им индексы. Фиг с ними, заплатят. Благо оплачивают добросовестно :)
В связи с этим вопрос: какой тип БД лучше использовать, чтоб таких глюков поменьше было. Имеет ли смысл перестраивать структуру существующей БД и насколько это будет затратно.


 
grifon_nn   (2003-06-26 00:24) [13]

>Anatoly Podgoretsky © (25.06.03 21:07)
>Эти данные ничего не стоят, их можно смело удалять не дожидаясь пропадания питания.

Простите, какие данные, которые были восстановлены? И почему их можно смело удалять?


 
Германн ©   (2003-06-26 04:10) [14]

Те самые, которые:
> to Соловьев: Это понятно, что клиент виноват. Уже не один раз им говорил, что если что случится с данными - я не отвечаю, им пофиг.

Проблемы с перебоями питания не решаются выбором типа БД. И любой тип БД может служить "средством перманентного обогащения" при "глупом" заказчике и "ловком" исполнителе. Но это только в "сладких" снах, а наяву оборачиваются только головной болью.


 
MsGuns ©   (2003-06-26 11:59) [15]

А что, использовать архивы базы учредители не позволяют ?


 
Stas ©   (2003-06-26 13:11) [16]

grifon_nn (26.06.03 00:21)

>В связи с этим вопрос: какой тип БД лучше использовать, чтоб >таких глюков поменьше было. Имеет ли смысл перестраивать >структуру существующей БД и насколько это будет затратно.

Если вырубить питание, то любая база может запортачться.
Я бы перешел на ACCESS.


 
mike-d ©   (2003-06-26 20:06) [17]

> Stas © (26.06.03 13:11)
> Если вырубить питание, то любая база может запортачться.

Полностью согласен. Ни одна БД таких издевательств не выдерживает.

> grifon_nn

А что касается Paradox - посмотри по ссылке http://www.degisy.com/download.php?lang=rus - там в библиотечке Degisy Db есть компонент восстанавливающий структуру таблиц и индексы (работает только с BDE) - его можно встроить например в инициализацию программы.
В свое время я его использовал еще для апдейта структуры БД у клиентов. Правда был у него, помниться, глючок небольшой... По моему он не любит файлы *.VAL (хотя может они и исправили это). Лечится удалением всех файлов *.VAL из директории БД в момент запуска перед проверкой целостности структуры.
Удачи.


 
Anatoly Podgoretsky ©   (2003-06-26 20:28) [18]

grifon_nn (26.06.03 00:24)
Нет, которые есть в базе, судя по подходу пользователя, ему все равно пропадут они или нет, так зачем ждать, сразу Format Disk-
Вот если данные ценные и их потеря и последующее восстановление обойдутся всяко более 200 долларов (а это достаточно для покупки управляемого ИБП), то заказчик приобрел бы ИБП и не тратил деньги на восстановление индексо и не дай бог всех данных.

Я бы отказался от соотрудничества с таким заказчиком, поскольку козлом отпущения окажешься ты.



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

Текущий архив: 2003.07.21;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.128 c
3-67730
niko4543
2003-06-27 23:29
2003.07.21
БД


1-67759
BelCaesar
2003-07-08 19:44
2003.07.21
С канвы на принтер или в bmp файл!


1-67785
paul_k
2003-07-09 10:58
2003.07.21
Как обратится к свойствам компонентя по его имени


7-68080
Monak
2003-05-11 19:23
2003.07.21
Время...


4-68114
vitall
2003-05-18 13:41
2003.07.21
Как читать HTML своей программой?