Комментарии

Создание и видоизменение таблицы по командам DDL
( 0 Голосов )

Как упоминалось ранее на нашем сайте, команды DDL служат для создания и видоизменения структуры таблиц базы данных. В приложениях Joomla команды DDL, как правило, используются при установке, удалении или обновлении соответствующего расширения. Следовательно, эти команды чаще всего встречаются в сценариях установки и удаления, а не в исходном коде расширений на языке РНР.

И хотя командами DDL можно пользоваться динамически в цикле исполнения, делать это обычно не рекомендуется. Таблицы базы данных для большинства приложений должны быть созданы один раз: при установке или обновлении расширения. Именно поэтому команды DDL практически отсутствуют при обычной обработке данных.

Ранее были созданы два сценария, находящиеся в файлах sql/install.mysql.utf8.sql и sql/uninstall.mysql.utf8.sql, но эти сценарии предназначены специально для работы с MySQL. А сценарий установки Microsoft SQL Server должен находиться в файле sql/install.sqlserver.utf8.sql. Зачем же для различных баз данных SQL требуются разные сценарии? Дело в том, что синтаксис команд DDL в языке SQL немного отличается для различных баз данных SQL, в том числе MySQL, Microsoft SQL Server, Oracle и PostgreSQL, и поэтому сценарий, подходящий для одной базы данных, может оказаться непригодным для другой. В таком случае надежнее всего использовать разные сценарии для различных баз данных.

В рассматриваемом здесь примере сценария установки расширения применяется команда CREATE TABLE, по которой создаются две таблицы, используемые в этом расширении, тогда как в сценарии удаления — команда DROP TABLE, удаляющая (или опускающая в терминологии баз данных) таблицу из базы данных. Попутно заметим, что команды SQL принято указывать прописными буквами, хотя их разрешается вводить как строчными, так и прописными буквами.

В основном варианте распространения Joomla имеется файл сценария installation/sql/mysql/joomla.sql, содержащий все команды DDL, необходимые для создания полной базы данных в Joomla, включая основные расширения. Но опять же этот сценарий специально предназначен для базы данных MySQL, а для другой базы данных должен быть создан свой сценарий в отдельной папке. Следует также заметить, что в данном сценарии применяется команда INSERT типа DML для загрузки данных в основные таблицы. Более подробно команда INSERT рассматривается в следующих статьях сайта. В приложениях Joomla чаще всего применяются следующие команды DDL: CREATE TABLE, ALTER TABLE и DROP  TABLE.


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


 
Похожие новости