Как представить последовательность переменной длины в дизайне отношений BCNF? - PullRequest
1 голос
/ 08 февраля 2020

Предположим, у меня скользящая головоломка, или пошаговая игра, или навигация по лабиринту, по сути, сценарий, в котором мы заботимся о том, каковы ходы, а также об их порядке, и, кроме того, их число варьируется, как Можем ли мы спроектировать схему, которая хранит информацию головоломки / игры / лабиринта так, чтобы она находилась в BCNF?

Предположим, что в качестве рабочего примера схема выглядит примерно так:

Puzzle = (puzzle_id, time_limit, solved, moves)

где moves - последовательность действий переменной длины, например 'tile_1_down; tile_2_up; tile_18_right; ...'.

Как мы express можем представить эту идею упорядоченной последовательности в сочетании с переменной длиной в проекте BCNF?

1 Ответ

1 голос
/ 08 февраля 2020

Обычно эта ситуация моделируется следующим образом:

Puzzle  = (puzzle_id, time_limit, solved)
Move = (puzzle_id, number_of_move, move)

с puzzle_id первичным ключом в Puzzle, puzzle_id, number_of_move первичным ключом для Move и puzzle_id внутри Перемещение внешней ключ для Puzzle.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...