• unknown's avatar
    Fix for bug #20695: Charset introducer overrides charset definition for column. · fe3dee06
    unknown authored
      - if there are two character set definitions in the column declaration,
        we replace the first one with the second one as we store both in the LEX->charset
        slot. Add a separate slot to the LEX structure to store underscore charset.
      - convert default values to the column charset of STRING, VARSTRING fields 
        if necessary as well.
    
    
    mysql-test/r/ctype_recoding.result:
      Fix for bug #20695: Charset introducer overrides charset definition for column.
        - test result.
    mysql-test/t/ctype_recoding.test:
      Fix for bug #20695: Charset introducer overrides charset definition for column.
        - test case.
    sql/sql_lex.cc:
      Fix for bug #20695: Charset introducer overrides charset definition for column.
        - LEX->underscore_charset introduced to store UNDERSCORE_CHARSET
    sql/sql_lex.h:
      Fix for bug #20695: Charset introducer overrides charset definition for column.
        - LEX->underscore_charset introduced to store UNDERSCORE_CHARSET
    sql/sql_table.cc:
      Fix for bug #20695: Charset introducer overrides charset definition for column.
        - convert default values to the column charset of VARSTRING, STRING, ENUM, 
          SET fields if necessary.
    sql/sql_yacc.yy:
      Fix for bug #20695: Charset introducer overrides charset definition for column.
        - LEX->underscore_charset introduced to store UNDERSCORE_CHARSET
    fe3dee06
sql_lex.cc 45 KB