https://dev.mysql.com/partitioning-handling-nulls.html
Even though it is permitted to use NULL as the value of an expression that must otherwise yield an integer, it is important to keep in mind that NULL is not a number. If you insert a row into a table partitioned by RANGE such that the column value ... Partitioning in MySQL does nothing to disallow NULL as the value of a partitioning expression, whether it is a column value or the value of a user-supplied ...
https://dev.mysql.com/partitioning-limitations.html
However, the result must be an integer value or NULL (except in the case of [LINEAR] KEY partitioning, as discussed elsewhere in this chapter; see Section 23.2, “Partitioning Types”, for more information). For example, ERROR_FOR_DIVISION_BY_ZERO ... This section discusses current restrictions and limitations on MySQL partitioning ...
https://dev.mysql.com/alter-table-partition-operations.html
Partitioning-related clauses for ALTER TABLE can be used with partitioned tables for repartitioning, to add, drop, discard, import, merge, and split partitions, and to perform partitioning maintenance. This option is intended for use chiefly when ...Simply using a partition_options clause with ALTER TABLE on a partitioned table repartitions the table according to the partitioning scheme defined by the ...
https://dev.mysql.com/atomic-ddl.html
An atomic DDL statement combines the data dictionary updates, storage engine operations, and binary log writes associated with a DDL operation into a single, atomic transaction. Atomic DDL is made possible by the introduction of the MySQL data ...
https://dev.mysql.com/create-table-check-constraints.html
Prior to MySQL 8.0.16, CREATE TABLE permits only the following limited version of table CHECK constraint syntax, which is parsed and ignored: CHECK (expr) As of MySQL 8.0.16, CREATE TABLE permits the core features of table and column CHECK ...If ...
https://dev.mysql.com/get-diagnostics.html
GET DIAGNOSTICS can obtain either statement or condition information, but not both in the same statement: To obtain statement information, retrieve the desired statement items into target variables. This instance of GET DIAGNOSTICS assigns the ...
https://dev.mysql.com/index-page-merge-threshold.html
row *************************** Table: t2 Create Table: CREATE TABLE `t2` ( `id` int(11) DEFAULT NULL, KEY `id_index` (`id`) COMMENT 'MERGE_THRESHOLD=40' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 Note A MERGE_THRESHOLD value defined at the index level ...If the “page-full” percentage for an index page falls below the MERGE_THRESHOLD value when a row is deleted or when a row is shortened by an UPDATE operation, InnoDB attempts to merge the index page with a neighboring index ...
https://dev.mysql.com/innodb-online-ddl-operations.html
To avoid uncertainty and the potential space requirement for an extra hidden column, specify the PRIMARY KEY clause as part of the CREATE TABLE statement. The change buffer is not used, because there are no random-access inserts into the secondary ... Online support details, syntax examples, and usage notes for DDL operations are provided under the following topics in this ...
https://dev.mysql.com/innodb-row-format.html
As more rows fit into a single disk page, queries and index lookups can work faster, less cache memory is required in the buffer pool, and less I/O is required to write out updated values. In addition, there is a 6-byte transaction ID field and a ...
https://dev.mysql.com/innodb-virtual-table.html
CREATE TABLE `t1` ( `a` int(11) DEFAULT NULL, `b` int(11) DEFAULT NULL, `c` int(11) GENERATED ALWAYS AS (5) VIRTUAL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; However, metadata for such a column does appear in the INNODB_COLUMNS table. The ...