Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MySQL > Поделитесь примером сложной структуры БД (50-70 та


Автор: ssstttuuufff 9.10.2008, 02:04
Надо для курсача. Пример сложной структуры БД. Очень желательно присутствие триггеров и/или связей между таблицами. Перерыл кучу CMS и Social Engines. Везде не то. ... Во-первых ни одного триггера нигде нет, связи нигде не прописаны (хотя чувствую мало, кто их в MySQL использует на уровне БД), значение полей и таблиц невозможно определить по имени. Может у кого-то есть пример с 50-70 таблицами или посоветуйте, где порыться ... 

Автор: skyboy 9.10.2008, 09:31
Цитата(ssstttuuufff @  9.10.2008,  01:04 Найти цитируемый пост)
связи нигде не прописаны

внешние ключи-то? на движке БД MyISAM, который считается более быстрым, а потому - намного чаще используемым, ни транзакции, ни внешние ключи не работают(точнее, нет поддержки транзакций, а потому - нет поддержки внешних ключей, я так думаю). из-за того в реальных проектах такое практически не используется. целосность обеспечивается на уровне приложения-клиента.
Цитата(ssstttuuufff @  9.10.2008,  01:04 Найти цитируемый пост)
Может у кого-то есть пример с 50-70 таблицами

сложно. слишком уж большое количество таблиц. Такое, как мне кажется, возможно только под монструозной системой(навроде, 1С: Бухгалтерии, но там не MySQL), либо в системе, где для ускорения используется разделение данных по таблицам(статистика биллинга хранится разбитой по месяцам, к примеру). так что проще написать подобное самостоятельно.
а откуда ограничение на количество таблиц?

Автор: vladimir74 9.10.2008, 09:42
посмотри магазины типа XT-Commerce но не думаю что там есть тригеры. Насколько мне помнится в MySQL транзакции, тригерры и многое другое появилось сравнительно недавно, а известные сегодня проекты живут уже по 5-10 лет. Понятное дело никто старую структуру не торопится обновлять....

Автор: rcdimon 9.10.2008, 11:25
Цитата

Может у кого-то есть пример с 50-70 таблицами или посоветуйте, где порыться ... 


Форум IPB... Там около 100 таблиц. Правда жутко кривая БД- нелогичная и запутанная, много дублирующей информации и т.д. Кароче в универе за такоую БД зачот не поставят  smile 

Автор: ssstttuuufff 9.10.2008, 15:19
Мда ... а дали задание именно на дофига таблиц, да чтобы все были связаны, а ещё желателньо и триггерами наварочены.  Где же мне посмотреть столько связанных таблиц ..

Автор: rcdimon 9.10.2008, 19:21
Сам придумай

Автор: ssstttuuufff 9.10.2008, 19:42
Нашёл. Движок соц. сети BigStreet. Таблиц там не 50, а около 20, но зато все связаны на уровне БД и MySQL Workbench строит красивую картинку.

rcdimon, 
гениально,  smile 

Автор: skyboy 9.10.2008, 19:58
ssstttuuufff, а чем тебе не нравится самодельный подход? вот у меня под рукой централизованная система охраны. 107 таблиц. 20 основных - справочников. остальные же - данные за каждый месяц работы - отдельная таблица(оно оправдано с точки зрения скорости - в месяц около 700 000 записей). соответственно - надо сделать основную сртуктуру, а потом(на том же РНР или ещё каком языке) набросать простенькую программу, которая сгенерирует остальные сотню таблиц и заполнит случайными данными. с нужными триггерами и связями.

Автор: ssstttuuufff 11.10.2008, 14:35
skyboy, 

Ты не совсем понял. Проблема не в том как сделать N десятков таблиц, а в том как это сделать наиболее граматно и посмотреть как это сделано в уже существующих инфраструктурах (движки форумов, соц. сети). Опыта проектирования БД нету, вот и хотелось бы сначала посмотреть,  а обёртка на php/любом_другом_я.п.   мне вообще не нужна. Основная цель : заложить основы правильного проектирования БД (где/зачем нужны или не нужны связи, какой тип таблиц применять,  нормализация данных и т.д.). В общем нашёл пару примеров - буду ковыряться. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)