экономия места в Mysql таблице - PullRequest
3 голосов
/ 29 декабря 2010

Привет, может кто-нибудь предложить мне способ сохранить расположение сидений, которое представляет собой матрицу nXm в таблице MySQL. Ниже показано, как мы генерируем таблицу nXm

  • Admin указывает номер строки и столбца шины
  • Администратор выбирает, является ли конкретный элемент матрицы

    1. сиденье
    2. 1012 * Пассаж *
    3. Спящий

    Примечание: спальное место занимает 2 элемента

  • Эта матрица должна быть сохранена в базе данных

Я хочу, чтобы каждый элемент матрицы имел уникальный идентификатор, с одним исключением, в случае если спящий два элемента одинаковы

1 Ответ

2 голосов
/ 29 декабря 2010

MatrixTable

|MatrixID|Rows|Colls|

где MatrixID является первичным ключом

SeatTakenTable

|MatrixID|Row|Column|PassangerType|ElementID|

Где все столбцы являются первичным ключом композитного кода

Нет необходимости экономить свободные места, потому что при использовании этого «логического» ключа не будет никаких сговоров

Для спящего вы должны вставить две строки в таблицу SetTaken с одним и тем же ElemntID

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