I built a website with a QuickStart package of a template, which had already installed Virtuemart v3.0.12 on Joomla 3.6.2.
Then after installation of that quickstart package, the first thing I want to do is upgrade/update the Joomla core and extensions.
After I update VM to 3.0.18, I went to frontend "shop" page, those listings can be shown up normally. But when I click on one product and tried to see its detail page, I got following error message instead of the nornal product page:
COLLATION 'utf8_general_ci' is not valid for CHARACTER SET 'utf8mb4' SQL=SELECT `u`.*,`pr`.*,`l`.`product_name`,`rv`.`vote`, IFNULL(`u`.`name` COLLATE utf8mb4_general_ci, `pr`.`customer` COLLATE utf8_general_ci) AS customer FROM `#__virtuemart_rating_reviews` AS `pr` INNER JOIN `#__virtuemart_products_en_gb` AS `l` ON `l`.`virtuemart_product_id` = `pr`.`virtuemart_product_id` LEFT JOIN `#__virtuemart_rating_votes` AS `rv` on (`pr`.`virtuemart_rating_vote_id` IS NOT NULL AND `rv`.`virtuemart_rating_vote_id`=`pr`.`virtuemart_rating_vote_id` ) XOR (`pr`.`virtuemart_rating_vote_id` IS NULL AND (`rv`.`virtuemart_product_id`=`pr`.`virtuemart_product_id` and `rv`.`created_by`=`pr`.`created_by`) ) LEFT JOIN `#__users` AS `u` ON `pr`.`created_by` = `u`.`id` WHERE `pr`.`virtuemart_product_id` = "5" ORDER BY created_on DESC LIMIT 0, 3
Go Back Home
I have no idea how to fix this? What had caused this?
In order to help you to help me, I checked the "quickstart" package initial installation, I noticed that after updating Joomla core to v3.6.5, some tables in the DB uses "utf8mb4_unicode_ci" collation, but some others still uses "utf8_general_ci" collation. And, ALL Virtuemart tables use "utf8_general_ci" collations.Do I need to manually change VM talbes' collation to "utf8mb4_unicode_ci" before updating it to v3.0.18?
Or just leave it as "utf8_general_ci" and directly update it ?