ALTER SHARDING KEY GENERATE STRATEGY
Description
The ALTER SHARDING KEY GENERATE STRATEGY syntax is used to alter sharding key generate strategy for the currently selected database.
Syntax
AlterShardingKeyGenerateStrategy ::=
'ALTER' 'SHARDING' 'KEY' 'GENERATE' 'STRATEGY' keyGenerateStrategyName '(' keyGenerateStrategyDefinition ')'
keyGenerateStrategyDefinition ::=
columnKeyGenerateStrategyDefinition
| sequenceKeyGenerateStrategyDefinition
columnKeyGenerateStrategyDefinition ::=
'TABLE' '=' tableName ',' 'COLUMN' '=' columnName ',' keyGenerateAlgorithmDefinition
sequenceKeyGenerateStrategyDefinition ::=
'SEQUENCE' '=' sequenceName ',' keyGenerateAlgorithmDefinition
keyGenerateAlgorithmDefinition ::=
algorithmDefinition
| 'GENERATOR' '=' keyGeneratorName
algorithmDefinition ::=
'TYPE' '(' 'NAME' '=' algorithmType (',' propertiesDefinition)? ')'
propertiesDefinition ::=
'PROPERTIES' '(' (key '=' value (',' key '=' value)*)? ')'
key ::=
string
value ::=
literal
keyGenerateStrategyName ::=
identifier
tableName ::=
identifier
columnName ::=
identifier
sequenceName ::=
identifier | string
keyGeneratorName ::=
identifier
algorithmType ::=
stringSupplement
- The syntax structure is consistent with
CREATE SHARDING KEY GENERATE STRATEGY; ALTERreplaces the existing sharding key generate strategy with the new definition;GENERATOR=...is used to switch to an existing sharding key generator;TYPE(NAME=..., PROPERTIES(...))is used to switch to a new inline algorithm definition;algorithmTypeis the key generate algorithm type. For details, refer to Distributed Primary Key.
Example
- Alter a column-based sharding key generate strategy by referencing an existing key generator
ALTER SHARDING KEY GENERATE STRATEGY order_id_strategy (
TABLE=t_order,
COLUMN=order_id,
GENERATOR=snowflake_generator
);- Alter to a sequence-based sharding key generate strategy with inline algorithm
ALTER SHARDING KEY GENERATE STRATEGY order_sequence_strategy (
SEQUENCE="order_seq",
TYPE(NAME="uuid")
);Reserved word
ALTER, SHARDING, KEY, GENERATE, STRATEGY, TABLE, COLUMN, SEQUENCE, TYPE, NAME, PROPERTIES, GENERATOR