Mysql:Changes in MySQL 8.0.13 (2018-10-22, General Availability):utf8mb3 ->utf8mb4
Changes in MySQL 8.0.13 (2018-10-22, General Availability)
-
...
-
InnoDB: Support for
TABLESPACE = innodb_file_per_tableandTABLESPACE = innodb_temporaryclauses withCREATE TEMPORARY TABLEis deprecated and will be removed in a future MySQL version. -
The
utf8mb3character set is deprecated and will be removed in a future MySQL version. Please useutf8mb4instead.
-
Incompatible Change: The deprecated
ASCorDESCqualifiers forGROUP BYclauses have been removed. Queries that previously relied onGROUP BYsorting may produce results that differ from previous MySQL versions. To produce a given sort order, provide anORDER BYclause.Queries and stored program definitions from MySQL 8.0.12 or lower that use
ASCorDESCqualifiers forGROUP BYclauses should be amended. Otherwise, upgrading to MySQL 8.0.13 or higher may fail, as may replicating to MySQL 8.0.13 or higher slave servers.
-
Important Change: Setting user variables in statements other than
SETis now deprecated due to issues that included those listed here:-
The order of evaluation for expressions involving user variables was undefined.
-
The default result type of a variable is based on its type at the beginning of the statement, which could have unintended effects when a variable holding a value of one type at the beginning of a statement was assigned a new value of a different type in the same statement.
-
HAVING,GROUP BY, andORDER BYclauses, when referring to a variable that was assigned a value in the select expression list, did not work as expected because the expression was evaluated on the client and so it was possible for stale column values from a previous row to be used.
Syntax such as
SELECT @var, @var:=@var+1is still accepted in MySQL 8.0 for backward compatibility, but is subject to removal in a future MySQL version. -
浙公网安备 33010602011771号