Разработка:XMLDB — различия между версиями
Ilya (обсуждение | вклад) м |
Ilya (обсуждение | вклад) (→Использование визуального редактора для создания таблиц) |
||
Строка 18: | Строка 18: | ||
Действия, которые возможно произвести на этой странице: | Действия, которые возможно произвести на этой странице: | ||
− | * [View Original] - посмотреть оригинальный xml-код для установки базовых таблиц freedeanceoffice. Для создания новой таблицы не понадобится. | + | * '''[View Original]''' - посмотреть оригинальный xml-код для установки базовых таблиц freedeanceoffice. Для создания новой таблицы не понадобится. |
− | * [View Edited] - посмотреть отредактированный xml-код таблиц. Понадобится для просмотра итогового результата. | + | * '''[View Edited]''' - посмотреть отредактированный xml-код таблиц. Понадобится для просмотра итогового результата. |
− | * [New Table] - создать новую таблицу. | + | * '''[New Table]''' - создать новую таблицу. |
− | * [New Table From MySQL] - создать новую таблицу из уже существующей. Очень полезно, если вам нужно создать несколько однотипных таблиц в базе данных. | + | * '''[New Table From MySQL]''' - создать новую таблицу из уже существующей. Очень полезно, если вам нужно создать несколько однотипных таблиц в базе данных. |
− | * [New Statement] - создать новое выражение. Используется для конструирования SQL-выражений. | + | * '''[New Statement]''' - создать новое выражение. Используется для конструирования SQL-выражений. |
− | * [Back To Main] - вернуться к списку всех таблиц. | + | * '''[Back To Main]''' - вернуться к списку всех таблиц. |
− | * [View SQL Code] - посмотреть SQL-код для создания всех таблиц. | + | * '''[View SQL Code]''' - посмотреть SQL-код для создания всех таблиц. |
− | * [View PHP Code] - посмотреть PHP-код для создания всех таблиц. | + | * '''[View PHP Code]''' - посмотреть PHP-код для создания всех таблиц. |
− | Выбирайте [New Table]. После этого | + | === Создание таблицы === |
+ | Выбирайте '''[New Table]'''. После этого вам отобразится диалог создания новой таблицы: | ||
+ | [[Изображение:xmldb_step4.jpeg]] | ||
+ | Задайте имя таблицы и комментарий к ней. Имена всех создаваемых вами таблиц должны начинаться с '''block_dof_s_'''. После того, как вы это сделали, можно будет приступать к созданию полей таблицы. | ||
+ | Возможные действия над таблицей: | ||
+ | * '''[View Edited]''' - получить xml-код всей вашей таблицы. Самый главный пункт меню, он пригодится нам, когда создание всех полей и индексов будет закончено. | ||
+ | * '''[New Field]''' - новое поле. | ||
+ | * '''[New Key]''' - новый ключ. | ||
+ | * '''[New Index]''' - новый индекс. | ||
+ | * '''[Back]''' - вернуться назад. | ||
+ | * '''[View SQL Code]''' - посмотреть SQL-код для создания этой таблицы. | ||
+ | * '''[View PHP Code]''' - посмотреть PHP-код для создания этой таблицы. | ||
+ | Обратите внимание, что в таблице уже создано одно новое поля типа int, которое обладает свойствами ''unsigned'', ''not null'' и ''auto-numbered''. Оно также является и первичным ключом таблицы. | ||
− | К сожалению, XMLDB-редактор не видит всех таблиц freedeanceoffiсe, поэтому после создания кода таблицы нам придется скопировать xml-код вручную и вставить его в соответствующий файл. | + | === Создание полей === |
+ | Нажимаем '''[New Field]''', появится диалоговое окно создания поля: | ||
+ | |||
+ | [[Изображение:xmldb_step5.jpeg]] | ||
+ | |||
+ | Параметры: | ||
+ | * ''Name:'' Имя нового поля. | ||
+ | * ''Comment:'' Комментарий к полю. ''Примечание: в версии moodle-1.9.2 и ранее, есть баг, который не добавляет описание к полям таблицы в базе данных. Будем наедятся, что в будущих версиях это будет исправлено.'' | ||
+ | * ''Type:'' Тип значения. | ||
+ | * ''Length:'' Длина | ||
+ | * ''Decimals:'' количество знаков после запятой (для типа number) | ||
+ | * ''Unsigned:'' знаковое\беззнаковое значение | ||
+ | * ''Not Null:'' Ненулевое значение | ||
+ | * ''Sequence:'' для поля типа int: производить ли авто-нумерацию (AUTO_INCREMENT) | ||
+ | * ''Enum:'' Для поля типа enum: список значений через запятую. Чтобы это поле стало активным выберите в поле Type значение char. | ||
+ | * ''Default:'' Значение по умолчанию. | ||
+ | |||
+ | Действия: | ||
+ | * '''[View Original]''' - Посмотреть оригинальный xml-код для этого поля. Не работает для только что созданных полей. | ||
+ | * '''[View Edited]''' - Посмотреть измененный xml-код этого поля (если вы его редактировали) | ||
+ | * '''[Back]''' - вернуться к редактированию таблицы. | ||
+ | |||
+ | Замечания: | ||
+ | * Для хранения всех внешних ключей используется поле типа int длины 11. | ||
+ | * Для хранения времени используйте формат unixtime, и тип int длины 11. | ||
+ | * После создания поля оно появится в списке полей таблицы. | ||
+ | |||
+ | === Создание индексов === | ||
+ | |||
+ | |||
+ | === Получение xml-кода === | ||
+ | К сожалению, XMLDB-редактор не видит всех таблиц freedeanceoffiсe, поэтому после создания кода таблицы нам придется скопировать xml-код вручную и вставить его в соответствующий файл. | ||
== Создание скриптов установки == | == Создание скриптов установки == |
Версия 20:32, 4 июня 2009
Содержание
Общие сведения
XML DataBases - это стандартный способ описания таблиц в базе данных Moodle. Он позволяет стандартизировать процесс установки и обновления таблиц. Вся структура таблиц содержится в специальных XML-файлах.
Установочный скрипт для таких таблиц выглядит следующим образом: внутри папки с плагином создается папка db, и в нее кладется файл install.xml, описывающий таблицу, или несколько таблиц в базе данных.
Использование визуального редактора для создания таблиц
XML-файлы не требуется создавать вручную: для этого в Moodle есть специальный XMLDB-редактор. Для того чтобы использовать его вы должны обладать в системе Moodle правами администратора. В панели управления выберите Разное->XMLDB редактор.
Вам отобразится весь список таблиц, которые есть в Moodle. Мы будем работать только с таблицами freedeanceoffice, которые обозначены как blocks/dof/db.
Выбирайте функцию [load] для того чтобы начать работать с таблицами. После этого строчка таблицы станет зеленой, и ссылка [edit] станет активной. Нажмите на нее. Появится диалоговое окно работы с таблицами freedeansoffise:
Действия, которые возможно произвести на этой странице:
- [View Original] - посмотреть оригинальный xml-код для установки базовых таблиц freedeanceoffice. Для создания новой таблицы не понадобится.
- [View Edited] - посмотреть отредактированный xml-код таблиц. Понадобится для просмотра итогового результата.
- [New Table] - создать новую таблицу.
- [New Table From MySQL] - создать новую таблицу из уже существующей. Очень полезно, если вам нужно создать несколько однотипных таблиц в базе данных.
- [New Statement] - создать новое выражение. Используется для конструирования SQL-выражений.
- [Back To Main] - вернуться к списку всех таблиц.
- [View SQL Code] - посмотреть SQL-код для создания всех таблиц.
- [View PHP Code] - посмотреть PHP-код для создания всех таблиц.
Создание таблицы
Выбирайте [New Table]. После этого вам отобразится диалог создания новой таблицы:
Задайте имя таблицы и комментарий к ней. Имена всех создаваемых вами таблиц должны начинаться с block_dof_s_. После того, как вы это сделали, можно будет приступать к созданию полей таблицы. Возможные действия над таблицей:
- [View Edited] - получить xml-код всей вашей таблицы. Самый главный пункт меню, он пригодится нам, когда создание всех полей и индексов будет закончено.
- [New Field] - новое поле.
- [New Key] - новый ключ.
- [New Index] - новый индекс.
- [Back] - вернуться назад.
- [View SQL Code] - посмотреть SQL-код для создания этой таблицы.
- [View PHP Code] - посмотреть PHP-код для создания этой таблицы.
Обратите внимание, что в таблице уже создано одно новое поля типа int, которое обладает свойствами unsigned, not null и auto-numbered. Оно также является и первичным ключом таблицы.
Создание полей
Нажимаем [New Field], появится диалоговое окно создания поля:
Параметры:
- Name: Имя нового поля.
- Comment: Комментарий к полю. Примечание: в версии moodle-1.9.2 и ранее, есть баг, который не добавляет описание к полям таблицы в базе данных. Будем наедятся, что в будущих версиях это будет исправлено.
- Type: Тип значения.
- Length: Длина
- Decimals: количество знаков после запятой (для типа number)
- Unsigned: знаковое\беззнаковое значение
- Not Null: Ненулевое значение
- Sequence: для поля типа int: производить ли авто-нумерацию (AUTO_INCREMENT)
- Enum: Для поля типа enum: список значений через запятую. Чтобы это поле стало активным выберите в поле Type значение char.
- Default: Значение по умолчанию.
Действия:
- [View Original] - Посмотреть оригинальный xml-код для этого поля. Не работает для только что созданных полей.
- [View Edited] - Посмотреть измененный xml-код этого поля (если вы его редактировали)
- [Back] - вернуться к редактированию таблицы.
Замечания:
- Для хранения всех внешних ключей используется поле типа int длины 11.
- Для хранения времени используйте формат unixtime, и тип int длины 11.
- После создания поля оно появится в списке полей таблицы.
Создание индексов
Получение xml-кода
К сожалению, XMLDB-редактор не видит всех таблиц freedeanceoffiсe, поэтому после создания кода таблицы нам придется скопировать xml-код вручную и вставить его в соответствующий файл.