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

Вниз

Кеширование БД   Найти похожие ветки 

 
AlexeyMir   (2008-02-13 17:35) [0]

Подскажите пожалуйста, у меня приложение работает с удаленной БД(Firebird), использую кэширование. Что сделать чтобы если один пользователь добавлял или изменял записи(с выполнением ApplyUdates), то другой пользователь видел изменения сделанные первым? Т.е. как еще раз второму пользователю закачать копию реальной базы?


 
Johnmen ©   (2008-02-13 17:41) [1]


> то другой пользователь видел изменения сделанные первым?

А что, не видит?
Что ты делаешь, чтобы видел?

ЧИТАТЬ БУКВАРИ И ОСНОВЫ!!!
www.ibase.ru


 
Desdechado ©   (2008-02-13 17:44) [2]

Никакие копии никуда не качаются.
Обычно пользователи не работают на запись с данными, которые делают в этот момент другие пользователи - для этого есть должностная инструкция и порядок работ.
А увидеть то, что сделано другим пользователем, можно просто переоткрытием запроса. Именно запроса, а не "базы" или "таблицы". Не нужно волочь пользователю все "про запас", даже если он просит.


 
AlexeyMir   (2008-02-13 17:46) [3]

IBQuery.Refresh
IBQuery.Close
IBQuery.Open
Пробовал вместе и по отдельности - новые данные из реальной базы не вижу.

Если делать
IBDatabase1.Connected:=False;
IBDatabase1.Connected:=True;
то вижу, но я сомневаюсь что так правильно.


 
Johnmen ©   (2008-02-13 17:51) [4]

Параметры транзакции д.б. выставлены правильные.
Сейчас ты спросишь, что это такое?
Так я уже сказал, что делать, ещё в первом посте...


 
AlexeyMir   (2008-02-13 17:53) [5]

Два пользователя работают с одной таблицей, им нужно видеть свежие добавленные записи. А перезакрытие запроса не работает.


 
PEAKTOP ©   (2008-02-13 19:00) [6]


 if(IBQuery.Active)then
   IBQuery.Close;
 if(IBQuery.Transaction.InTransaction)then
   IBQuery.Transaction.Commit;
 IBQuery.Transaction.Params.Text := "isc_read_commited"+#13#10+"isc_write"+#13#10+"isc_rec_version"+#13#10+"isc_wait";
 IBQuery.Open;


Только параметры транзакции выставлены неправильно. А как правильно - ты должен сам решить, исходя из своей бизнес-логики. А вот чтобы это сделать, нужно:  Johnmen ©   (13.02.08 17:41) [1]


 
DrPass ©   (2008-02-15 10:24) [7]


> Т.е. как еще раз второму пользователю закачать копию реальной
> базы?

...надеюсь, они у тебя соединяются к одной и той же базе данных? 8-)



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

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

Наверх




Память: 0.48 MB
Время: 0.017 c
2-1214676784
WebSQLNeederr
2008-06-28 22:13
2008.07.27
Алгоритм по формированию времени с помощью DateTimeToString


15-1213006023
@!!ex
2008-06-09 14:07
2008.07.27
У меня есть матричный принтер...


15-1212760713
Vlad Oshin
2008-06-06 17:58
2008.07.27
моя плакаю. Бросаем delphi, переходим на С под NET


15-1213276839
Игорь М.
2008-06-12 17:20
2008.07.27
видеоролик


15-1212838198
Vlad Oshin
2008-06-07 15:29
2008.07.27
как сделать кнопку в IDE, выполняющую некое действие в редакторе