Схема базы данных состоит из трех отношений (рис. П.5):
utQ (Q_ID, Q_NAME)
utV (V_ID, V_NAME, V_COLOR)
utB (B_Q_ID, B_V_ID, B_VOL, B_DATETIME)
Таблица utQ содержит идентификатор — Q_ID и название квадрата — Q_NAME, цвет которого первоначально черный.
Таблица utV содержит идентификатор — V_ID, название — V_NAME и цвет — V_COLOR баллончика с краской.
Таблица utB содержит информацию об окраске квадрата баллончиком: B_Q_ID — идентификатор квадрата, B_V_ID — идентификатор баллончика, B_VOL — количество краски и B_DATETIME — время окраски.
При этом следует иметь в виду, что:
баллончики с краской могут быть трех цветов — красный V_COLOR = 'R', зеленый V_COLOR = 'G', голубой V_COLOR = 'B' (латинские буквы);
объем баллончика равен 255 и первоначально он полный;
цвет квадрата определяется по правилу RGB, то есть R = 0, G = 0, B = 0 — черный, R = 255, G = 255, B = 255 — белый;
запись в таблице закрасок utB уменьшает количество краски в баллончике на величину B_VOL и соответственно увеличивает количество краски в квадрате на эту же величину;
значение 0 < B_VOL <= 255;
количество краски одного цвета в квадрате не превышает 255, а количество краски в баллончике не может быть меньше или равно нулю.