Server SQL Modes • PAD_CHAR_TO_FULL_LENGTH By default, trailing spaces are trimmed from  CHAR  column values on retrieval. If PAD_CHAR_TO_FULL_LENGTH  is enabled, trimming does not occur and retrieved  CHAR  values are padded to their full length. This mode does not apply to  VARCHAR  columns, for which trailing spaces are retained on retrieval. As of MySQL 8.0.13,  PAD_CHAR_TO_FULL_LENGTH  is deprecated. Expect it to be removed in a future version of MySQL. Note • PIPES_AS_CONCAT • REAL_AS_FLOAT • STRICT_ALL_TABLES • STRICT_TRANS_TABLES Treat  ||  as a string concatenation operator (same as  CONCAT() ) rather than as a synonym for  OR . Treat  REAL  as a synonym for  FLOAT . By default, MySQL treats  REAL  as a synonym for  DOUBLE . Enable strict SQL mode for all storage engines. Invalid data values are rejected. For details, see Strict SQL Mode. Enable strict SQL mode for transactional storage engines, and when possible for nontransactional storage engines. For details, see Strict SQL Mode. 976 mysql>  CREATE TABLE t1 (c1 CHAR(10)); Query OK, 0 rows affected (0.37 sec) mysql>  INSERT INTO t1 (c1) VALUES(’xy’); Query OK, 1 row affected (0.01 sec) mysql>  SET sql_mode = ’’; Query OK, 0 rows affected (0.00 sec) mysql>  SELECT c1, CHAR_LENGTH(c1) FROM t1; +------+-----------------+ | c1 | CHAR_LENGTH(c1) | +------+-----------------+ | xy | 2 | +------+-----------------+ 1 row in set (0.00 sec) mysql>  SET sql_mode = ’PAD_CHAR_TO_FULL_LENGTH’; Query OK, 0 rows affected (0.00 sec) mysql>  SELECT c1, CHAR_LENGTH(c1) FROM t1; +------------+-----------------+ | c1 | CHAR_LENGTH(c1) | +------------+-----------------+ | xy | 10 | +------------+-----------------+ 1 row in set (0.00 sec)