Resolving the “Numeric value out of range: 1690 BIGINT UNSIGNED” error in Magento

Recently when making some changes on a Magento based store we encountered a mySQL error in the Magento administration pages when trying to delete products which prevented any further products from being deleted.

The error message

SQLSTATE[22003]: Numeric value out of range: 1690 BIGINT UNSIGNED value is out of range in ‘(`YOURDB`.`q`.`items_count` – 1)’

Resolving the error

  1. Log into phpMyAdmin (either via cPanel or through your web hosting providers control panel)
  2. Do a backup (it’s always best practice to back-up first)
  3. Select the Magento database for your store
  4. Select the sales_flat_quote table
  5. Select the structure tab
  6. Select ‘change‘ on the ‘items_count‘ row
  7. Go to the drop-down list on the column named ‘Attributes‘ and change the value to the top option in the list, which is blank (no value), as opposed to the default selection ‘UNSIGNED‘ .
  8. Click save, and you’re finished. You should now be able to delete your products without the error

Need help?

We can carry out the required changes to your database for you, this usually costs £45 and can be carried out same-day in most cases. Please get in touch for more details.