Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MS Access > сетевая БД


Автор: mmik 23.4.2009, 08:28
На сервере с прибора читаются данные и кидаются в БД, на клиентских машинах идет привязка к таблице этой БД и уже идет визуализация в виде форм, графиков и т.п. Две проблемы: периодически отсутствуют данные в таблице на сервере (возможно  из-за того, что в тот момент, когда производится запись в БД, тогда же и чтение) и в присоединенной таблице у клиента, записи идут почему-то не попорядку, а на сервере все нормально. В чем может быть проблема?

Автор: Akina 23.4.2009, 09:26
Цитата(mmik @  23.4.2009,  09:28 Найти цитируемый пост)
периодически отсутствуют данные в таблице на сервере 

Все или только последние?

Цитата(mmik @  23.4.2009,  09:28 Найти цитируемый пост)
в присоединенной таблице у клиента, записи идут почему-то не попорядку, а на сервере все нормально.

А какого лешего  на клиенте кто-то лезет в ТАБЛИЦЫ? на основе таблицы следует построить запрос, с требуемой сортировкой.
И почитате основы - нет в реляционных БД такого понятия как порядок записей в таблице.

Автор: mmik 23.4.2009, 10:56
Данные пропадают именно периодически и я это связываю именно с обращением к БД со стороны клиента. Как вообще правильно организовать клиент- сервер?

На основе присоединенной таблицы сделана форма и там же можно переходить по записям и они идут не по порядку. Или форму нужно тоже создавать на основе запроса?


Автор: Akina 23.4.2009, 11:06
Цитата(mmik @  23.4.2009,  11:56 Найти цитируемый пост)
Данные пропадают именно периодически 

Что такое "пропадают"/"отсутствуют"? Не показываются в сеансе или вообще испаряются из базы и больше не видны никому?

Цитата(mmik @  23.4.2009,  11:56 Найти цитируемый пост)
Или форму нужно тоже создавать на основе запроса?

Конечно... ну или хотя бы сортировку указывать...

Автор: ТоляМБА 23.4.2009, 11:13
Цитата(Akina @  23.4.2009,  11:26 Найти цитируемый пост)
Все или только последние?
Цитата(mmik @  23.4.2009,  12:56 Найти цитируемый пост)
Данные пропадают именно периодически
Глухой телефон?!
Цитата(mmik @  23.4.2009,  12:56 Найти цитируемый пост)
Как вообще правильно организовать клиент- сервер?
Спросить у гугля умную книжку по данному вопросу и прочитать её, ибо в одном посте сею тему не опишешь.
Цитата(mmik @  23.4.2009,  12:56 Найти цитируемый пост)
форму нужно тоже создавать на основе запроса?
Истину глаголешь. А в запросе написать Order by по нужному полю.

Автор: mmik 23.4.2009, 12:51
Данные в базу пишутся каждые две минуты. А некоторые, получается, просто не пишутся. И когда потом смотришь БД там дыры. Как правильно организовать, чтобы сервер спокойно себе писал, а остальные не мешая ему читали?

Автор: Akina 23.4.2009, 13:28
Скорее всего это последствие блокировки таблицы клиентом и неграмотно написанного софта, не рассчитанного на такое.
Наиболее правильное решение - запрещение работы клиентов с таблицами, и создание для них представлений.

Автор: mmik 23.4.2009, 14:18
А это как?

Автор: bopoha 26.4.2009, 23:04
mmik, попробуйте сделать так, чтобы сервер открывал таблицу для записи с блокировкой, разрешающей всем остальным только чтение. Если не поможет, то попробуйте использовать транзакции.

Автор: mmik 27.4.2009, 08:50
Спасибо, поробую

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)