Error
Error Code:
1487
MariaDB Error 1487: Non-constant expression in PARTITION BY
Description
This error occurs when attempting to define partitions for a table using `RANGE` or `LIST` partitioning, but the values provided for the partition boundaries are not constant expressions. MariaDB requires that all values specified in the `VALUES` clause for `RANGE` or `LIST` partitions must be static and known at the time the table is created or altered.
Error Message
Expression in RANGE/LIST VALUES must be constant
Known Causes
3 known causesUsing a SQL Variable
Defining partition values with user-defined variables (`@my_var`) or session variables, which are not considered constant during table definition.
Non-Deterministic Function
Employing functions (e.g., `NOW()`, `UUID()`, user-defined functions) whose return values are not fixed and known at the time of table creation.
Subquery in Partition Definition
Including a subquery within the `VALUES` clause of a `RANGE` or `LIST` partition, as subqueries are evaluated dynamically and are not constant expressions.
Solutions
Coming SoonGeneral Troubleshooting Tips
- Check the error message carefully for specific details
- Review recent changes that might have caused the error
- Search for the exact error code in the official documentation
- Check log files for additional context
- Try restarting the application or service