Я планирую создать базу данных для отслеживания времени пользователя в/время M-F. Каждую неделю следует начинать в понедельник и проходить через воскресенье.Дизайн базы данных для отслеживания еженедельного времени
У меня есть таблица, заполненная всей моей популяцией пользователей, поэтому я знаю, какие пользователи мне нужно создавать записи и где они принадлежат. Я предложил до сих пор, таблица, состоящая из следующих полей для отслеживания записей (наряду с примерами данных для заполнения поля):
Field Name in table (Example of possible data)
---------------------
Employee (John Smith) 'String
Unit (Quality Assurance) 'String
WeekOf (9/9/13) 'date
InMonday (6:30) 'string, validate either a time in/out or N/A if holiday/vacation
OutMonday (3:15) '^^
HoursWorkedMonday (8.00) 'total hours worked
VacationMonday (0.00) 'if N/A for time, should have hours here
OvertimeMonday (0.00) 'any additional work hours should go here
Для этого, например, я бы создать In/Out на каждый день (и, возможно, отслеживать дату, для которой каждый день). Является ли это посторонним или есть, по-видимому, лучшая организация для отслеживания еженедельных измерений времени? Должен ли я использовать одну таблицу с индикатором единицы или несколькими таблицами для каждой единицы?
Ах я вижу, то я могу присоединиться, что другие данные, то когда мне нужно. Поэтому почти каждый пользователь должен иметь ежедневное время. Поэтому, если я вводю неделю за раз, я должен создать учетные записи за неделю для моих пользователей, а затем придумать способ потянуть их в мой интерфейс для редактирования. Должен ли я разбить это на таблицы «единиц» или сохранить единицу в качестве поля в основной таблице? Как вы справляетесь с управляемостью, например, будет много пользователей. Редактировать: по лотам, я имею в виду пару сотен в день –
Я не уверен на 100%, что вы в конечном итоге хотите делать с данными. Если вы говорите о хранении часов вместо фактического Time In/Time Out, тогда я бы сохранил фактические единицы вместо этих полей. Просто одно поле «TimeWorked», а затем введите количество часов. Что касается редактирования этих данных, когда он находится в базе данных (в отличие от просто добавления новой записи), вы можете перенести данные и затем записать их обратно в ячейку по ячейке. В общем, вы не хотите создавать открытое соединение с вашими данными, ВСЕГДА используйте несвязанные формы. Это затрудняет запись ненужных записей в таблицу. –
Извините, я имею в виду, когда дело доходит до создания фактических таблиц, как я должен группировать свои данные в таблицы. Скажем, я работаю в «Департаменте запасных частей», если у меня есть таблица для «Департамента деталей», «Департамент комиссии» и т. Д., Или это должно быть полем «ОТДЕЛ» в одной таблице, чтобы отслеживать время. IE, я думаю, мне понадобится запрос объединения, если я захочу увидеть все данные в одном, если его разделение, и данные, находящиеся в одной таблице, с полем «department». –