Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Модуль Forms 65535
Имитационное мо... 59474
Реклама
Сейчас на сайте
Гостей: 7
На сайте нет зарегистрированных пользователей

Пользователей: 13,109
новичок: syqwe
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Двунаправленный динамический список на Delphi + Блок схемы
Расчет размера дохода на одного человека в Turbo Pascal
Обработка задач на ЭВМ на GPSS + Пояснительная записка

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
Другие достоинства таблицы пересечений
При индексировании Contacts.account_id производительность выше, чем при сравнении подстрок в списке с запятыми-разделителями. Когда объявляется внешний ключ для столбца, во многих базах данных разных типов создается в неявном виде индекс по этому столбцу (проверьте данное утверждение по документации).
Путем добавления столбцов в таблицу пересечений можно также создать дополнительные атрибуты для каждой записи. Например, можно было бы записать дату, когда контактное лицо было добавлено для заданного продукта, или атрибут, отмечающий, кто является основным контактным лицом в отличие от второстепенных контактных лиц. Это невозможно сделать в списке, разделяемом запятыми.
ВНИМАНИЕ!
. Храните каждое значение в его собавеиных столбце и строке.
Дерево и есть дерево — сколько их еще вам надо, чтобы рассмотреть его ?
Рональд Рейган
ГЛАВА 3. ПРОСТЫЕ ДЕРЕВЬЯ
Предположим, что вы разрабатываете программное обеспечение для известного веб-сайта, где размещают новости науки и техники.
Это современный веб-сайт, так что пользователи могут добавлять комментарии и даже отвечать друг другу, создавая треды обсуждения, которые ветвятся и образуют сложную иерархическую структуру. Вы выбираете простое решение: отследить эти цепочки ответов. Каждый комментарий ссылается на комментарий, на который он отвечает.
Файл примера:.Trees/intro/parent.sql
CREATE TABLE Comments (
comment_id SERIAL PRIMARY KEY,
parent_id BIGINT UNSIGNED,
comment TEXT NOT NULL,
FOREIGN KEY (parent_id) REFERENCES Comments(comment_id) ) ;
Однако вскоре становится ясно, что с помощью одного SQL-запроса трудно извлечь длинную цепочку ответов. Можно получить только прямые дочерние объекты или, возможно, объединить комментарий с потомками на фиксированную глубину. Тем не менее треды дискуссий могут обладать неограниченной глубиной. Для получения комментариев в заданном треде потребовалось бы выполнить много SQL-запросов.
Другая идея состоит в извлечении всех комментариев и сборе их в древовидные структуры данных в памяти приложения, с использованием традиционных алгоритмов деревьев, которые проходят в школе. Но владельцы вебсайта сообщили вам, что они ежедневно публикуют десятки статей и каждая статья может обрастать сотнями комментариев. Непрактично сортировать миллионы комментариев каждый раз, когда кто-нибудь просматривает вебсайт.
Должен существовать оптимальный способ хранения тредов комментариев, позволяющий просто и эффективно извлекать всю цепочку обсуждений.
Опубликовал vovan666 June 18 2013 16:24:45 · 0 Комментариев · 2634 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
Программирование ...
Blobs [Исходник н...
Упорядоченный дин...
Scrrlcaptoin
Degisy Data Acces...
С. Г. Горнаков - ...
Синтаксический ан...
GPSS World Studen...
Применение жадног...
Flash MP3 Player ...
Алгоритм трассиро...
Пример OpenGL гра...
Факториал [Исходн...
C# 2005 и платфор...
Динамические за...
Java 2. Наиболее ...
Borland Delphi 8 ...
Формирование отче...
Crystal Button
Расширенный загру...

Топ загрузок
Приложение Клие... 100512
Delphi 7 Enterp... 90282
Converter AMR<-... 20092
GPSS World Stud... 15003
Borland C++Buil... 12719
Borland Delphi ... 8944
Turbo Pascal fo... 7093
Калькулятор [Ис... 5136
Visual Studio 2... 5018
FreeSMS v1.3.1 3554
Случайные статьи
Экспертные системы...
Планируемые характ...
Получение факса на...
PUBLIC, PRIVATE ИЛ...
Выработка решенияП...
Индексированные об...
Использование SD-карт
Важность памяти
Абстрактные типы д...
Герметик для дерева
Error In Integer c...
Полная пропускная ...
Формулы
Введение в Object ...
TopGen 3 (накрутчик)
Вычислительные модели
Дешифрация отдельн...
Аварийное восстано...
Прекращение отладк...
Функция date() - в...
АНТИПАТТЕРН: ЗАПОЛ...
МОРФОГЕНЕЗ И ЕГО М...
Изготовление метал...
AVL дерево
если удалить строк...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?