分布式数据库中间件 DDM-全局序列在INSERT或REPLACE语句中的使用:操作步骤
操作步骤
- 连接DDM实例。
连接方法具体请参考连接DDM实例。
- 打开dml_test_1逻辑库。
use dml_test_1;
- 输入命令创建全局序列。
create sequence seq_test;
- 使用以下语句,实现全局序列在insert语句或者replace语句的使用。
insert into test_seq(col1,col2)values(seq_test.nextval,seq_test.currval);
- 打开dml_test_2逻辑库。
use dml_test_2;
- 使用以下语句,实现全局序列在insert语句或者replace语句的使用。
insert into test_seq(col1,col2)values(dml_test_1.seq_test.nextval,dml_test_1.seq_test.currval);
由于全局序列是创建在逻辑库“dml_test_1”下的,在逻辑库“dml_test_2”下使用全局序列需要显式指定逻辑库“dml_test_1.seq_test.nextval”、“dml_test_1.seq_test.currval”。
- 全局序列结合insert和replace的使用只支持拆分表,不支持广播表和单表。
- nextval和currval在insert和replace语句中是从左到右执行的,如果一条语句使用同一个全局序列nextval多次,每出现一次就递增一次。
- 全局序列是属于逻辑库的,删除逻辑库,所在删除逻辑库的全局序列也会被删除。