3.14 Database Error

9 posts by 4 authors in: Forums > CMS Builder
Last Post: September 4, 2018   (RSS)

Hi all,

I just installed V3.14 on a new site and thought everything was going well.

When I tried to access the Section editor I got the following error:

MySQL Error: Unknown column 'tableName' in 'cmsb__accesslist' - in mysql_functions.php on line 394 by __mysql_upgradeTableToUTF8mb4()

Any thoughts?

Thanks,

Jerry Kornbluth

The first CMS Builder reference book is now available on-line!







Take advantage of a free 3 month trial subscription, only for CMSB users, at: http://www.thecmsbcookbook.com/trial.php

Hey Jerry, 

I'm not sure what could be causing this, perhaps the upgrade is attempting to upgrade the tables charset before its added the new columns. I'll need to take a closer look at this site to work out what issue is. Would it be possible to send an email to support@interactivetools.com with the FTP and CMS login details for the server?

Cheers,

Greg

Greg Thomas







PHP Programmer - interactivetools.com

Hi Greg,

Sure will.

This was a new install and I tried uploading the files again.

I'll try recreating the database and see if that makes any difference (didn't think of that before)

If I get the same error I'll send the log in info.

Thanks

Jerry

The first CMS Builder reference book is now available on-line!







Take advantage of a free 3 month trial subscription, only for CMSB users, at: http://www.thecmsbcookbook.com/trial.php

Hi Greg,

Tried everything from scratch.

New database gave the same error.

Email is on it's way.

Thanks again

Jerry

The first CMS Builder reference book is now available on-line!







Take advantage of a free 3 month trial subscription, only for CMSB users, at: http://www.thecmsbcookbook.com/trial.php

By kitsguru - September 3, 2018 - edited: September 3, 2018

Same error upgrading from 3.13

MySQL Error: Unknown column 'tableName' in 'cmsb__accesslist' - in mysql_functions.php on line 394 by __mysql_upgradeTableToUTF8mb4()

However the column does exist.

The schema for __accesslist both userNum and maxRecords have the same label 'label' => 'User Number',

Jeff Shields

Thanks Jeff,

Hope this helps them track down the gremlin.

Jerry

The first CMS Builder reference book is now available on-line!







Take advantage of a free 3 month trial subscription, only for CMSB users, at: http://www.thecmsbcookbook.com/trial.php

Hey Jerry and Jeff,

Thanks for bringing this issue to our attention. I managed to track down the cause, to fix the issue you'll need to change line 417 of the file cmsb_install_directory/lib/mysql_functions.php from this:

WHERE table_name = '" .mysql_escape($mysqlTable). "' AND
character_set_name IS NOT NULL AND
collation_name IS NOT NULL"; // check for NULL to skip numeric/date fields that don't have charset/collation

To this:

WHERE table_name = '" .mysql_escape($mysqlTable). "' AND
table_schema = '{$GLOBALS['SETTINGS']['mysql']['database']}' AND
character_set_name IS NOT NULL AND
collation_name IS NOT NULL"; // check for NULL to skip numeric/date fields that don't have charset/collation

The issue seems to happen when you have multiple databases setup in MySQL that have CMS Builder installed with the same prefix. This causes the statement above to select the same column more than once, which invalidated the next MySQL update statement.

I'll push this change to our dev copy of CMS Builder so that the fix is in the next release.

Thanks for helping us track down this issue.

Cheers,

Greg

Greg Thomas







PHP Programmer - interactivetools.com

3.14 Database Error - Fix works fine!

Thanks Greg,

You guys ROCK! (as always)

Jerry

The first CMS Builder reference book is now available on-line!







Take advantage of a free 3 month trial subscription, only for CMSB users, at: http://www.thecmsbcookbook.com/trial.php