Структура папки sql-файлов в моем компоненте

В какой папке я должен поместить мои файлы sql в мой компонент для joomla выполнить их автоматически? Если в первой версии я создал таблицу и в более поздней версии я хочу изменить, как мне организовать эти файлы, чтобы joomla знал, какие файлы он должен выполнять? Как Joomla управляет этими файлами?

6 голосов | спросил csbenjamin 24 AMpThu, 24 Apr 2014 06:38:25 +040038Thursday 2014, 06:38:25

2 ответа


8

Как уже писал Milton, вы указываете, где эти файлы SQL находятся в файле манифеста установки. Существует три разных места для установки, удаления и обновления.

<install>
    <sql>
        <file driver="mysql" charset="utf8">sql/install.mysql.utf8.sql</file>
    </sql>
</install>
<uninstall>
    <sql>
        <file driver="mysql" charset="utf8">sql/uninstall.mysql.utf8.sql</file>
    </sql>
</uninstall>
<update>
    <schemas>
        <schemapath type="mysql">sql/updates/mysql</schemapath>
    </schemas>
</update>

Как вы видите, update один является немного особенным, так как он не указывает один файл, а папку. В этой папке должны быть файлы, следующие за вашими версиями компонентов. При обновлении Joomla проверит эту папку и применит команды в файлах в правильном порядке. Он хранит последний прикладной файл в базе данных, поэтому он знает о следующем обновлении, которое было последним. Поэтому папка должна содержать файлы, названные так:

  • 1.0.0.sql
  • 1.0.1.sql
  • 1.1.0.sql
  • ...
ответил Bakual 24 AMpThu, 24 Apr 2014 09:48:20 +040048Thursday 2014, 09:48:20
4

Соглашение обычно представляет собой каталог admin, но помимо этого это не имеет значения, если вы правильно указываете местоположение файлов внутри основного xml-файла.

, как:

<install>
    <sql>
        <file driver="mysql" charset="utf8">sql/tables/install.sql</file>
    </sql>
</install>

или

<install>
    <sql>
        <file driver="mysql" charset="utf8">sql/install.sql</file>
    </sql>
</install>
ответил Milton Bryant 24 AMpThu, 24 Apr 2014 07:39:45 +040039Thursday 2014, 07:39:45

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132