![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите разработать структуру БД [D6]
Drakosha © (2004-09-01 11:49:00)Задача такова:
Написать программу тестирования-тобишь приходят кандидаты им дают N-вопросов, они отвечают и всё это хранить нуна.
Пока создал таблицу с информацией о тестируемых и таблицу с вопросами и ответами(иерархическую )
и вот теперь нужно гдето хранить результаты
Сразу подумал создать таблицу что то типа id/id_тестируемого/id_otveta
... но потом подумал ... тестируемых предполагается что то типа 400 000 ...вопросов каждому 40-60
получается в таблице будет храниться около 400 000*40 записей(а если делать историю то ещё больше) что собственно и пугает
Какие будут идеи?
Drakosha (2004-09-03 12:19:00) [1]Всем спасибо за участие :)
Считаю ветвь закрытой
Vit@ly (2004-09-03 09:54:00) [2]У меня там 0, 1, 2, 3 (неуд, уд, хор и отл), а кроме того набранные баллы. Но это все не принципиально. Можно организовать так как тебе удобно
Drakosha (2004-09-02 18:22:00) [3]тобишь у тебя в "результат аттестации" 1 или 0 ?
Vit@ly (2004-09-01 19:30:00) [4]Довольно сложно понять о чем здесь идет разговор?
У меня скажем похожая тестовая система.
Постоянно храню только сами результаты тестирования. Примерно в такой таблице:
- предприятие (из таблицы прдприятий)
- ФИО (из таблицы ФИО, где и остальная информация: должность,г.рожд. и т.п.)
- дата аттестации
- результат аттестации
Непосредственные вопросы каждого аттестуемого храню во временных файлах (да и то не все, а лишь те, на которые аттестуемый ответил неверно). Информацию сохраняю на случай конфликтной ситуации, если аттестуемый не соласен с оценкой (в этом случае я даю ему распечатку (протокол) эго ответов). Храню обычно не более 3-х дней. Позже эта информация теряет свою актуальность.
Petr V. Abramov (2004-09-01 18:23:00) [5]> stud © (01.09.04 14:52) [36]
> а зачем 60 раз одинаковое значение поля связи?)))
На случай, если с датой понятием экзамена кроме даты окажутся связаны какие-нить атрибуты. Я задачи ни задачи, ни человека не знаю, но готов спорить на пиво, что очень скоро так и окажется :). И сам отвечающий, возможно, окажется в числе этих атрибутов.
Насчет "400 000*40" и "RAID" - баловство это все. Такого плана таблички сам бог велел создавать create table .... organization index и хоть на 386-й с помоишным :) винтом будет работать (если пользователей мало, а памяти - много :)
Sergey13 (2004-09-01 14:54:00) [6]2[36] stud © (01.09.04 14:52)
>а зачем 60 раз одинаковое значение поля связи?)))
Не понял. Ты про что?
>логика однако.
C этим еще разобраться надо.8-)
stud (2004-09-01 14:52:00) [7]
> Зачем 60 раз дату писать на каждый ответ? Можно 1 раз на
> "экзамен"
а зачем 60 раз одинаковое значение поля связи?))) и таблицы еще одной не надо)) логика однако.)) нормализация хорошо но не всегда))
Sergey13 (2004-09-01 14:40:00) [8]2[34] stud © (01.09.04 14:36)
>или в таблице ответов поле связи с таблицей "экзамен"
Я и писал об этом. Зачем 60 раз дату писать на каждый ответ? Можно 1 раз на "экзамен". Нормализация, однако. 8-)
stud (2004-09-01 14:36:00) [9]к таблице ответов.
или в таблице ответов поле связи с таблицей "экзамен"
Sergey13 (2004-09-01 14:34:00) [10]2[32] stud © (01.09.04 14:32)
>а зачем отдельную таблицу? добавить поле
Куда?
stud (2004-09-01 14:32:00) [11]
> И еще. Наверное надо сделать еще табличку "экзамен" с Id_человека
> и датой.
а зачем отдельную таблицу? добавить поле
Sergey13 (2004-09-01 14:28:00) [12]2[22] Drakosha (01.09.04 13:07)
И еще. Наверное надо сделать еще табличку "экзамен" с Id_человека и датой. Ибо могут быть и пересдачи наверное. Соответственно результаты должны ссылаться на эту табличку.
Sergey13 (2004-09-01 14:19:00) [13]2[29] Роман Снегирев (01.09.04 14:15)
Они связаны. См [8].
Роман Снегирев (2004-09-01 14:15:00) [14]Sergey13 ©
Зачем?
ну если не обязательно знать на какой вопрос собственно человек отвеыает, то может и незачем
Flagman (2004-09-01 14:14:00) [15]> Vit@ly
А может планируется 500 филиалов по тестированию...
Vit@ly (2004-09-01 14:09:00) [16]
> ... тестируемых предполагается что то типа 400 000 ...
Завидую...
По 100 кандидатов в день (без выходнох)
400 000 / (365*100) = примерно 11 лет
Sergey13 (2004-09-01 14:01:00) [17]2[25] Роман Снегирев (01.09.04 13:58)
>1)id вопроса
Зачем?
> и не надо "лохматить бабушку" (М. Задорнов)
С этим соглашусь. 8-)
Роман Снегирев (2004-09-01 13:58:00) [18]да нет никакой таблицы результатов, должна быть "третья" таблица где хранится
1)id вопроса
2)id ответа
3)id отвечающего
вот и все и не надо "лохматить бабушку" (М. Задорнов)
Sergey13 (2004-09-01 13:41:00) [19]2[22] Drakosha (01.09.04 13:07)
>скорее всего так и поступлю ...
"И это правильно." (с) М.С. Горбачев 8-)
>просто интересно что никто ни с чем подобным не сталкивался
Ну прям Америку ты отклыл. 8-) Сталкивались. Многие. Отсюда и советы.
Flagman (2004-09-01 13:10:00) [20]Поддерживаю [19]
Иначе потом нужно будет строку парсировать, а это потеря времени...
Да и к [14] - Поставить нормальный сервер со SCSI-RAID-ом, и все в порядке будет. Оракл штука мощная... ;)