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

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.008 c
1-67752
Star Wars
2003-07-07 08:12
2003.07.21
Встать на последнюю запись


7-68094
Darg
2003-05-13 16:09
2003.07.21
Вот везде есть примеры работы с СОМ портом, а как работать с LPT


8-67922
AntX
2003-04-01 16:07
2003.07.21
Спрайты из Аллодов


3-67716
shick
2003-06-27 14:58
2003.07.21
InterBase 6


14-68044
dumm
2003-07-03 16:58
2003.07.21
label.color - прозрачный?





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