Вниз
Скачать: 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 вся ветка

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



Память: 0.49 MB
Время: 0.012 c
3-67662
Nikolai_S
2003-06-25 20:57
2003.07.21
Помогите с SQL-запросом


3-67740
Deedlit
2003-06-30 08:12
2003.07.21
Corrupt file - other than header


3-67705
ses
2003-06-27 11:06
2003.07.21
что быстрее работает


8-67929
Agent[007]
2003-03-29 11:00
2003.07.21
Проблема с DelphiX


14-68002
Фигаро2000
2003-07-03 15:26
2003.07.21
ModelMaker 6.01 -> 6.20




   Наверх