phoenix主键自增
1 CREATE SEQUENCE my_sequence;-- 创建一个自增序列,初始值为1,自增间隔为1,将有100个自增值缓存在客户端。 2 CREATE SEQUENCE my_sequence START WITH -1000 3 CREATE SEQUENCE my_sequence INCREMENT BY 10 4 CREATE SEQUENCE my_cycling_sequence MINVALUE 1 MAXVALUE 100 CYCLE; 5 CREATE SEQUENCE my_schema.my_sequence START 0 CACHE 10
start
用于指定第一个值。如果不指定默认为1.increment
指定每次调用next value for
后自增大小。 如果不指定默认为1。minvalue
和maxvalue
一般与cycle
连用, 让自增数据形成一个环,从最小值到最大值,再从最大值到最小值。cache
默认为100, 表示server端生成100个自增序列缓存在客户端,可以减少rpc次数。此值也可以通过phoenix.sequence.cacheSize
来配置。
在上述示例中,我们首先创建了一个名为my_schema的序列,然后将表active_active
的id
列定义为BIGINT
类型的主键列,并且不允许为空。接下来,您可以使用该序列来为id
列生成自增值。
每当要插入新行时,可以使用以下方法将id
列设置为自增值:
1 UPSERT INTO active_active (id, nei_rong) VALUES (NEXT VALUE FOR seq, '您的内容');
删除序列
1 DROP SEQUENCE IF EXISTS my_schema.my_sequence
1 -- 查看当前序列值 2 SELECT CURRENT VALUE FOR my_sequence FROM active_active LIMIT 1;