Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-6218

MySQL - TEXT and BLOB columns can't have a default value

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 1.6.1
    • Fix Version/s: 1.8.3, 1.9
    • Component/s: General
    • Labels:
      None
    • Environment:
      All
    • Database:
      MySQL
    • Affected Branches:
      MOODLE_16_STABLE
    • Fixed Branches:
      MOODLE_18_STABLE, MOODLE_19_STABLE

      Description

      This is a follow up to MDL-6206 (adding a quiz fails on some MySQL 5 setups because it relies on using a default value for a TEXT column)

      According to the MySQL documentation TEXT and BLOB aren't allowed to use default values - http://dev.mysql.com/doc/refman/5.0/en/blob.html - but a quick search of the .sql files in moodle using a regexp like

      / text[^rn,]+default/i

      finds several places where text columns are setup with a default value - obviously it would require much more in depth checking to find out if any of these default values are required anytime a row is created.

      As noted in the previous bug MySQL only seems to enforce it's no default values for TEXT or BLOB rule with certain values of the sql_mode server variable (I think the default value of sql_mode in MySQL 5.0.22 includes the STRICT_TRANS_TABLES option which causes any query trying to use a default value to fail)

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                1 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:
                  Fix Release Date:
                  11/Oct/07