Подскажите как реализовать (PHP)?

12
CyberX
На сайте с 08.03.2008
Offline
51
734

к примеру имеем таблицы:

Ученики <=> id, фамилия, имя, отчество, адрес, телефон, год рождения

Предметы <=> id, "название предмета" (может быть больше 1000 :) добавлять по 1000 полей к каждому ученику не вариант )

Нужна схема посещения (Ученик был сегодня на 3х или 5ти занятиях)

Куда и как складывать данные ?

Шустрый хостинг (http://www.colocat.ru) за нормальные деньги (Москва). 30 дней тестовый период. Рекомендую копирайтера aronskaya (/ru/users/73753). Отличные авторские тексты.
H
На сайте с 11.09.2008
Offline
26
#1

таблица посещение

дата , id ученика , id предмета

тк количество учеников и предметок ограничено, мы можем гарантировать ограниченность объема таблицы.

Через какое-то время самые старые данные из такой таблицы желательно копировать в другую таблицу - архив (если они вообще нужны)

Ceterum censeo Carthaginem esse delendam
psylosss
На сайте с 23.12.2005
Offline
126
#2

нужна еще таблица

Ученики__Предметы <=> id_ученика, Id_предмета,дата

Веб-разработка. Сложные проекты. Проектирование. Проект-менеджмент. Стартапы.
[Удален]
#3

CyberX поле stat туда массив с id занятий )) мне кажется проще некуда

H
На сайте с 11.09.2008
Offline
26
#4

KosoyRoman, и во что у нас таблица к концу полугдия превратиться ? ))

CyberX
На сайте с 08.03.2008
Offline
51
#5

Hutch, таблица

Hutch:
дата , id ученика , id предмета

понятно, а как складывать и выводить данные если ученик посетил скажем 5 уроков за день ?

Делать 5 записей ? (не вариант)

H
На сайте с 11.09.2008
Offline
26
#6

5 записей лучше ...

Найдите в своей таблице в какие дни ученик был на уроке информатике

Сколько человек было на информатике 20 сентября

Сколько уроков информатики состоялось за последние 2 месяца

CyberX
На сайте с 08.03.2008
Offline
51
#7

Hutch, и сколько такая база выдержит ? если каждый день по 400 учеников приходит и от 1 до 10 занятий к примеру посещает ?

CyberX добавил 15.01.2009 в 21:55

KosoyRoman, можно поконкретнее с примером если можно.

H
На сайте с 11.09.2008
Offline
26
#8

1000 учеников *6 занятий в день (36 учебнх часов вроде санитарная норма для школьников)

= 6000 записей в сутки.

= 600 000 записей за семестр

можно разделить на несколько таблиц, если необходимо часто делать выборки из данных за последний месяц.

Выдержит такая такая таблица целый учебный год без всяких проблем.

Можете сгенерировать и проверить - она намного шустрее будет работать.

CyberX
На сайте с 08.03.2008
Offline
51
#9

Hutch, про учеников цитирую "к примеру" количество учеников постоянно растет а вот количество предметов нет. Да и таблица нужна лет на 10 в лучшем случае. как бы взять и заливать данные в 1 поле к ученикам (только нужно учесть, что данные добавляются не единовременно)

N
На сайте с 06.05.2007
Offline
419
#10

Делать 5 записей. Они очень примитивны и имеют небольшой фиксированный размер. Тормозить не будет. Или вы проектируете базу данных федеральных масштабов?

Можете еще почитать про тип данных SET, доступный в mysql5.0, но это для сильных духом.

Кнопка вызова админа ()
12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий