Joomla 3中缺少更新表

时间:2014-02-26 07:13:02

标签: mysql joomla joomla3.2

Joomla 3.x附带了一个方便的Update Joomla扩展,它更新了网站上的任何扩展,包括Joomla核心。不幸的是,在某些安装(主要是从Joomla 1.5迁移到Joomla 3.x)中,数据库中缺少“#__updates”表。

3 个答案:

答案 0 :(得分:1)

花了几个小时拖网之后,我找出了缺失的表并编写了以下MySQL查询来解决这个问题:

DROP table IF EXISTS #__updates;
CREATE TABLE `#__updates` (
  `update_id` int(11) NOT NULL AUTO_INCREMENT,
  `update_site_id` int(11) DEFAULT '0',
  `extension_id` int(11) DEFAULT '0',
  `name` varchar(100) DEFAULT '',
  `description` text NOT NULL,
  `element` varchar(100) DEFAULT '',
  `type` varchar(20) DEFAULT '',
  `folder` varchar(20) DEFAULT '',
  `client_id` tinyint(3) DEFAULT '0',
  `version` varchar(32) DEFAULT '',
  `data` text NOT NULL,
  `detailsurl` text NOT NULL,
  `infourl` text NOT NULL,
  `extra_query` VARCHAR(1000) DEFAULT '',
  PRIMARY KEY (`update_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Available Updates';

答案 1 :(得分:1)

我遇到了同样的问题,不止一次(使用新安装的Joomla 3.x)。 Joomla报告x_updates doesn't exist

此处提供的查询出现x_updates already exists错误。只有在代码之前添加DROP table IF EXISTS 'x_updates';之后才创建表。

这可能意味着必须在Joomla中重新安装一些插件,并且使用此插件的其他工作将丢失。

答案 2 :(得分:0)

只需查看original code,它就相当简单,需要2分钟。

--
-- Table structure for table `#__updates`
--

CREATE TABLE IF NOT EXISTS `#__updates` (
  `update_id` int(11) NOT NULL AUTO_INCREMENT,
  `update_site_id` int(11) DEFAULT 0,
  `extension_id` int(11) DEFAULT 0,
  `name` varchar(100) DEFAULT '',
  `description` text NOT NULL,
  `element` varchar(100) DEFAULT '',
  `type` varchar(20) DEFAULT '',
  `folder` varchar(20) DEFAULT '',
  `client_id` tinyint(3) DEFAULT 0,
  `version` varchar(32) DEFAULT '',
  `data` text NOT NULL,
  `detailsurl` text NOT NULL,
  `infourl` text NOT NULL,
  `extra_query` VARCHAR(1000) DEFAULT '',
  PRIMARY KEY (`update_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Available Updates';