Многопользовательская работа в локальной сети

Другие главы учебника "Система управления базами данных (СУБД) Visual Foxpro 7"

Создание базы данных проекта

  • Создание базы данных в окне проекта
  • Создание базы данных вне проекта
  • Таблицы — основа базы данных
  • Имена таблиц
  • Создание таблицы с помощью мастера
  • Окно конструктора таблицы
  • Определение полей таблицы
  • Определение свойств таблицы
  • Создание таблицы в конструкторе таблицы
  • Режимы просмотра таблицы
  • Модификация таблицы
  • Индексы
  • Создание первичного ключа для таблицы
  • Создание составного индекса
  • Отношения между таблицами
  • Создание отношений между таблицами
  • Целостность данных

     

 

Обнаружение и устранение конфликтов

При совместной работе с базой данных возможны конфликты, когда один или более пользователей пытаются заблокировать уже заблокированную другим пользователем запись. Возможны и взаимоблокировки, когда пользователь заблокировал одну запись или таблицу и пытается заблокировать вторую, которая уже заблокирована вторым пользователем. В то же время второй пользователь пытается заблокировать запись, заблокированную первым пользователем. Система буферизации записей и таблиц FoxPro упрощает разработку многопользовательских приложений и устранение возникающих конфликтов.

При попытке заблокировать уже заблокированную запись FoxPro выдает сообщение об ошибке. Для определения возникновения ошибки вы можете воспользоваться функцией TABLEUPDATE (), которая возвращает значение . F. (Ложь) при неудачной попытке сохранения данных. Кроме того, вы можете написать программу обработки ошибок и указать ее в команде ON ERROR. Для определения причины, по которой не удалось записать данные в базу данных, вы можете использовать значения кодов ошибок. Для определения кодов ошибок используется функция ERROR () или AERROR () .

При использовании буферизации данных в программе обработки ошибок вы можете определить, какие поля были изменены, каким было исходное значение поля и каким оно стало. Для определения изменения поля используется функция GETFLDSTATE (), которая по заданному номеру поля возвращает одно из значений, описанных в табл. 20.6.

Таблица 20.6. Значения, возвращаемые функцией GETFLDSTATE ()

Значение Состояние
1 Значение поля не изменялось
2 Значение поля было изменено или поле было удалено
3 Значение поля во вновь добавленной записи не изменялось
4 Значение поля во вновь добавленной записи было изменено или поле было удалено
;
Атомные станции с реакторами РБМК 1000 Преобразование энергии на АЭС Конструкция реактора РБМК-1000 Турбина реакторной установки Сепаратор-пароперегреватель Насосы атомной станции с реактором РБМК Система радиационного контроля Атомные станции с реакторами ВВЭР Система управления и контроля Атомные станции с реакторами БН-600 Высшая Математика Курс лекций - 1 семестр Интегралы - второй семестр примеры решения задач Конспекты - третий семестр Производная - 4 семестр ТФКП теория функции Дифференциалы задачи Mathematica учебник Ядерное разоружение Ядерные испытания Ядерная физика MATLAB электронный учебник Maple 7 математический анализ Первообразная курсовые задания Типовой по Кузнецову Смоленская АЭС Чернобыльская катастрофа