Wishlist 0 ¥0.00

Joomla: Updates Table Doesn't Exist

Joomla: Updates Table Doesn't Exist

One of our students was having a problem updating his site. The issue was the "updates" table in the database had become corrupted.

We found a solution for him, but it required running a query in phpMyAdmin. He wasn't familiar with the process of running a database query before, so we created this tutorial for him and you.

In the step-by-step tutorial, we'll describe the issue and demonstrate how to resolve it.

The Problem

  • Going to Components -> Joomla Update results in this error:

Joomla: Updates Table Doesn't Exist

 

An error has occurred.
 1146 Table `updates` doesn't exist SQL=SELECT DISTINCT update_site_id FROM #__updates WHERE `update_site_id` IN ( SELECT update_site_id FROM #__update_sites WHERE `last_check_timestamp` IS NULL OR `last_check_timestamp` <= '1493997061')

 

  • Going to Extensions -> Manage -> Database results in this error:

 

Table 'updates' does not have column 'infourl'. (From file 2.5.0-2012-01-10.sql.)
 Table 'updates' should not have column 'categoryid'. (From file 3.0.0.sql.)
 Table 'updates' does not have column 'extra_query'. (From file 3.2.2-2013-12-22.sql.)
 Table 'updates' does not have column 'version' with type varchar(32). (From file 3.2.2-2014-01-18.sql.)

 

  • Using the Fix button doesn't fix it. Instead, it results in this error:

 

Error
 Table 'updates' doesn't exist SQL=SHOW COLUMNS IN `#__updates` WHERE field = 'infourl'
 Table 'updates' doesn't exist SQL=SHOW COLUMNS IN `#__updates` WHERE Field = 'categoryid'
 Table 'updates' doesn't exist SQL=SHOW COLUMNS IN `#__updates` WHERE field = 'extra_query'
 Table 'updates' doesn't exist SQL=SHOW COLUMNS IN `#__updates` WHERE field = 'version' AND type = 'varchar(32)'

 

The Solution

At this point, we're stuck and we'll need a database solution.

  • Use your host's control panel to access phpMyAdmin:

  • Click on Databases and access your database:

  • Go to the SQL tab and add the following query to it:

 

DROP table IF EXISTS jos_updates;
 CREATE TABLE IF NOT EXISTS IF NOT EXISTS IF NOT EXISTS `jos_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';

 

  • In the above query, replace "jos" with your table prefix (excluding the underscore).
  • If you're not sure what your database table prefix is, you can find it in your Global Configuration's Server tab.

  • After clicking Go, you should see a success message similar to the following:

Success

You're done! Now double-check for the problem again and it should be gone. Congrats!

No comments

About Us

Since 1996, our company has been focusing on domain name registration, web hosting, server hosting, website construction, e-commerce and other Internet services, and constantly practicing the concept of "providing enterprise-level solutions and providing personalized service support". As a Dell Authorized Solution Provider, we also provide hardware product solutions associated with the company's services.
 

Contact Us

Address: No. 2, Jingwu Road, Zhengzhou City, Henan Province

Phone: 0086-371-63520088 

QQ:76257322

Website: 800188.com

E-mail: This email address is being protected from spambots. You need JavaScript enabled to view it.