Комментарии

Краткий обзор таблиц базы данных
( 6 Голосов )
База данных (как правило, MySQL) применяется в Joomla для хранения всех данных на веб-сайте. Стандартная база данных для версии Joomla 2.5 состоит из 34 таблиц. В этой статье приводится краткое описание каждой таблицы базы данных и ее назначение.
 
При установке Joomla имеется возможность выбрать префикс для имен таблиц в базе данных. Для доступа к таблице в коде РНР обычно служит обобщенный префикс #. Метод query () из класса JDatabaseMySQLi вызывает метод replacePref ix (), заменяющий обобщенный префикс на конкретный префикс, выбираемый из файла configuration.php.
 
Ради простоты в именах таблиц, упоминаемых в этой статье, употребляется префикс #, например таблица с именем #content. Но в именах таблиц реальной базы данных употребляется префикс, введенный при установке Joomla. Некоторые таблицы связываются с классом JTable. Это обычно делается для целей редактирования столбцов таблицы пользователем. Достаточно создать класс JTable для таблицы, и большая часть кода редактирования столбцов этой таблицы будет подготовлена автоматически. Подробнее об этом речь пойдет при создании специального компонента в следующих статьях нашего сайта.

Перечень таблиц базы данных в Joomla и их описание:

Таблица / Класс языка РНРОписание
#assets / JTableAsset Это новая таблица, введенная для системы списков контроля доступа (ACL) в версии 1.6. Она содержит строки для каждого компонента, также для каждого элемента с полномочиями ACL. К их числу относятся строка Root Asset (Корневой ресурс) для глобальных прав доступа, строка для каждой категории компонентов, а также строка для каждой статьи. В столбце rules (правила) хранятся групповые права доступа в формате JSON.
#associations / нет Используется для собственного многоязычного средства в Joomla, чтобы дать возможность связать отдельный пункт меню с соответствующим пунктом меню на другом языке мира
#banners / нет Содержит строки для каждого баннера, определенного на веб-сайте
#banner_clients / нет Содержит строки для каждого клиента баннера, определенного на веб-сайте
#banner_tracks / нет Содержит строки для каждого канала отслеживания баннеров, определенного на веб-сайте
#categories / JTableCategory Содержит строки для каждой категории, определенной на веб-сайте, включая статью, баннер, ленту новостей и вебссылку
#contact_details / нет Содержит строки для каждой контактной информации, определенной на веб-сайте
#content / JTableContent Содержит строки для каждой статьи, определенной на вебсайте
#content_rating / нет Содержит строки для каждой статьи, оцененной на вебсайте
#core_log_searches / нет Содержит строки для каждого фильтра поиска, установленного по команде Smart Search (Manage Search Filters) в переводе - Интеллектуальный поиск (Управлять фильтрами поиска)
#extensions / JTableExtension Содержит строки для каждого расширения, установленного на веб-сайте, включая компоненты, библиотеки, модули, шаблоны, подключаемые модули, языки и файлы
#finder_filters / FinderTableFilter Содержит строки для каждого элемента содержимого, индексированного средствами интеллектуального поиска
#finder_links / FinderTableLink
#finder_links_terms (0-f)
Сопоставляет критерии поиска со ссылками, учитывая весовой коэффициент. (Следует иметь в виду, что 15 таблиц, по существу, составляют единую логическую таблицу, но разделены на отдельные таблицы ради ускорения их индексирования.)
#finder_taxonomy / FinderTableMap
#finder_taxonomy_map / нет
#finder_terms / нет
#finder_terms_common / нет
#finder_tokens / нет
#finder_tokens_aggregate / нет
#finder_types / нет
Содержит строки для каждого поискового элемента, индексированного по всем элементам содержимого Содержит строки для каждого общеупотребительного в языке слова (не подлежит индексированию). Временные таблицы, используемые в процессе индексирования
#languages / JTableLanguage Содержит строки для каждого языка мира, установленного на веб-сайте
#menu / JTableMenu Содержит строки для каждого пункта меню, определенного в пользовательской и административной частях веб-сайта
#menu_types / JTableMenuType Содержит строки для каждого меню, определенного в пользовательской части веб-сайта
#messages / нет Содержит строки для каждого частного сообщения, отправляемого на веб-сайте
#messages_cfg / нет Содержит строки для каждого пользователя административной части, настраивающего веб-сайт по команде Components => Messaging => My Settings (Компоненты => Обмен сообщениями => Мои настройки)
#modules / JTableModule модуль, относящийся к пользовательской части, а значение 1 — модуль, относящийся к административной части вебсайта
#modules_menu / нет Это таблица соответствий, в которой показано назначение модулей для отдельных пунктов меню. Назначение модулей для отдельных пунктов меню указывается в столбце menuid следующим образом: значение 0 обозначает, что модуль назначен для всех пунктов меню; положительное значение—для данного конкретного пункта меню; отрицательное значение — для всех пунктов меню, кроме данного пункта
#news feeds / нет Содержит строки для каждой ленты новостей, созданной на веб-сайте
#redirect_links / нет Содержит строки для каждой переадресации, организованной на веб-сайте
#schemas / нет Содержит строки для каждого расширения, внесшего изменения в базу данных во время установки, наряду с последней установленной версией расширения
#session / JTableSession Содержит строки для каждого активного сеанса работы с веб-сайтом
#template_styles / нет Содержит строки для каждого стиля шаблона, определенного на веб-сайте
#updates / JTableUpdate Содержит строки для каждого доступного для установки пакета
#update_categories / нет Эта таблица служит для разделения обновлений на отдельные категории. Она сопровождается в Joomla автоматически
#update_sites / нет Содержит список сайтов обновления, выбираемый из XML- файла для каждого расширения
#update_sites_extensions / нет Это таблица соответствий, связывающая расширения # с обновлениями # и содержащая строки для каждого сочетания расширения и сайта обновления, где это расширение может быть обновлено
#usergroups / JTableUsergroup Содержит строки для каждой группы пользователей, определенной на веб-сайте
#users / JTableUser Содержит строки для каждого пользователя, определенного на веб-сайте
#user_profiles / нет Содержит строки для каждой группы, членом которой является данный пользователь
#viewlevels / JTableViewlevel Содержит строки для каждого уровня представления, определенного на веб-сайте
#weblinks / нет Содержит строки для каждой веб-ссылки, определенной на веб-сайте

Понравился материал? Пригодилась информация? Плюсани в социалки!


 
Похожие новости
Комментарии   
Stratok
+2 #1 Stratok 17.07.2014 15:29
Спасибо, очень полезная информация, почистил базу от ненужных таблиц.
Цитировать
Efin2012
0 #2 Efin2012 17.01.2015 12:16
Спасибо за статью. Пригодилась при изучении Joomla - очень !
Цитировать
Добавить комментарий


Защитный код