1
我正在创建一个新模块,但是这次我在创建数据库表时出错。另外我对这种安装文件结构感到困惑。我已阅读的Joomla文档,并试图他们在说什么:Joomla模块安装mySQL
在我的清单我创建了下面的安装/删除(SQL)部分:
<?xml version="1.0" encoding="utf-8"?>
<extension type="module" version="3.1.0" client="site" method="upgrade">
<name>Modulename</name>
<author>Jerry Schirrmann</author>
<description>A test module</description>
<files>
<filename>mod_modulename.xml</filename>
<filename module="mod_modulename">mod_modulename.php</filename>
<filename>index.html</filename>
<filename>helper.php</filename>
<filename>tmpl/default.php</filename>
<filename>tmpl/index.html</filename>
<filename>sql/mysql/install.mysql.utf8.sql</filename>
<filename>sql/mysql/uninstall.mysql.utf8.sql</filename>
</files>
<config>
<install>
<sql>
<file driver="mysql" charset="utf8">sql/mysql/install.mysql.utf8.sql</file>
<file driver="sqlazure" charset="utf8">sql/sqlazure/install.sqlazure.utf8.sql</file>
</sql>
</install>
<uninstall>
<sql>
<file driver="mysql" charset="utf8">sql/mysql/uninstall.mysql.utf8.sql</file>
<file driver="sqlazure" charset="utf8">sql/sqlazure/uninstall.sqlazure.utf8.sql</file>
</sql>
</uninstall>
</config>
</extension>
,并创建以下文件结构:
mod_xxx /sql/mysql/install.mysql.utf8.sql & mod_xxx/SQL/MySQL的/ install.mysql.utf8.sql
现在,他不给我一个错误,而安装,只是不会产生我的桌子。 我的文件结构是否正确?或者是我的一个SQL文件存在问题?
编辑:
下面是一些MySQL代码
CREATE TABLE IF NOT EXISTS `#__modulename` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`hello` text NOT NULL,
`lang` varchar(25) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;
INSERT INTO `#__modulename` (`hello`, `lang`) VALUES ('Hello World', 'en-GB');
INSERT INTO `#__modulename` (`hello`, `lang`) VALUES ('Hola Mundo', 'es-ES');
INSERT INTO `#__modulename` (`hello`, `lang`) VALUES ('Bonjour tout le monde', 'fr-FR');
我目前的Joomla是在3.2,我为3.1.0发展。
您使用的是哪个版本的Joomla?你能否提供你的**。sql **文件中的代码。即使数据库表没有被创建,模块是否被安装? – Lodder
我的Joomla目前在3.2,我正在为3.1.0开发。请参阅编辑SQL – jerry
您是否在''标记中包含了' sql '? –
Lodder