Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 01:08 24.05.24 
Компютри и Интернет
   >> Delphi
Всички теми Следваща тема *Кратък преглед

Тема Daite savet  
Авторlmmanuel (Нерегистриран)
Публикувано01.06.02 00:09



Niamam pretenciite da sum programist i da poznavam v detaili vazmojnostite na Delphi za tova vi molia za suvet. Stava vapros za informacionna systema realizirana s Delphi 4.0 na osnovata na bazi danni Access. Problema e 4e pri funkciuniraneto na s-mata se izvejdat suob6tenia za gre6ki kasae6ti dublirane na informacia v purvi4nite klu4ove na bazata danni, sled koeto ne e vazmojno da se prodalji rabota s neia. Za da se otstrani problema izpolzvame komandata Repair Database v Access, koeto e mnogo neprakti4no. Celta e da se napi6e programa koita da moje da pravi tezi popravki, samo 4e ne mi e mnogo iasno kak moje da stane pod Delphi, vav Visual Basic ima specialen metod koito pravi tova no nesznam dali ima podoben i v Delphi.

Molia ako niakoi ot vas e imal podoben problem ili e naiasno s nego da dade savet. Thanks !



Тема Re: Daite savetнови [re: lmmanuel]  
Автор Vapi ()
Публикувано01.06.02 08:45



Ако е възможно опишете малко по-подробно проблема.
Няколко въпроса и предположения :
1. Първичните ключове Auto Increment ли са? Ако са такива и имате въсможност за доработки в управляващата програма - направете ги да не са Auto Increment а програмата да се грижи за уникалността им.
2. Този проблем само при работа в мрежа ли възниква?
3. Изначално ли го има или се появи в последствие и ако е така след кое събитие?
4.Проблемът е генерален за цялата база данни или само за някои таблици?
.......

----------
По склона към връх Фудзи плахо пълзи охлюв към самото небе.


Тема Re: Daite savetнови [re: lmmanuel]  
Автор Bятъp (зaпaдeн)
Публикувано01.06.02 17:57



Има няколко начина да се направи "Compact and Repair" na Access-ка база от Delphi(От значение е каква версия е Аccessa).
Ето един пример как да стане:

1. Пускаш Delphi-то и отиваш в менюто: Project=>Import Type Library, намираш в списъка с библиотеки "Microsoft Jet and Replication Objects 2.5 Library" и натискаш Install; После я добави в някой пакет(може и нов) и го прекомпилирай(компилирай);
2. В програмата която ще прави "Compact and Repair" добавяш след "uses" JRO_TLB;
3. Примерен код:

procedure TForm1.Button1Click(Sender: TObject);
var
JET: JetEngine;
strProvider: string
begin
strProvider:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=';
try
JET:=CoJetEngine.Create;
JET.CompactDatabase(strProvider+'c:\FileForRepair.mdb',
strProvider+'c:\RepairedFile.mdb');
finally
JET:=nil;
end;
end;

Това е


Видях да язди през реки, те седем са на брой...


Тема Re: Daite savetнови [re: lmmanuel]  
Автор Pechenia (нема лабаво ;-)
Публикувано01.06.02 22:16



Колегата е показал как се прави Compact&Repair на базата. Неприятния момент е, че подобни грешки с уникални идентификатори са белег за неправилно проектирана база или кьопаво изпълнение на програмата.
Лично аз трудно бих се доверил на сметките, които подобна програма би дала - просто не е ясно дали смята с правилно попълнени данни.
Друга възможна причина е невъзможност за програмата да заключи базата докато попълва полета. Това е от приоритетите на администратора - нужно е всички копия /ако е peer-to-peer/ или на сървърната част /ако е client-server/ да имат пълни права за четене/запис до базата, както и права да създават файлове - за да може да се създаде заключващия файл.

чети и дишай по-леко



Всички темиСледваща тема*Кратък преглед
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2024 Dir.bg Всички права запазени.