Как хранить даты в таблице - PullRequest
0 голосов
/ 02 февраля 2012

Я работаю над проектом, похожим на календарь Google. Для его создания я использую ASP.NET. Я хотел бы, чтобы пользователи имели возможность заполнять свои собственные записи в календаре, а затем проводить перекрестную проверку записей в календаре других пользователей для проверки идеального времени проведения собраний.

Однако я не уверен, что будет лучшим способом представить это в базе данных.

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

Итак, я хочу иметь таблицу для календаря пользователей - подумав об этом, я думаю, что лучший способ сделать это - иметь одну таблицу, состоящую из идентификатора пользователя, - но тогда, что представляет каждый час пользователей день? Если я хочу заполнить базу данных, скажем, за 3 года до сегодняшнего дня. Нецелесообразно запрашивать одну базу данных с первичным ключом, идентифицирующим пользователя, и отдельным столбцом для каждого дня или даже часа (не говоря уже о 15 минутах!).

Каков наилучший способ сделать это? Если вам нужна проработка, пожалуйста, спросите, я попытался объяснить проблему настолько ясно, насколько смог, но трудно не быть немного двусмысленным при обсуждении такой сложной проблемы.

1 Ответ

1 голос
/ 02 февраля 2012

Вы будете хранить только события, сохраненные по их началу и концу (или по началу и продолжительности). Вы заполняете таблицу временных интервалов программно. День / время, когда события не перекрывают их, пусты.

...