求教大神,oracle中的varchar2类型的列可以用sequence吗,还是必须用number类型的才可以用?
1个回答
展开全部
可以用,但是要基于number
给你个例子
create table test (id varchar2(10)); --建表
CREATE SEQUENCE test_sequence --建序列
INCREMENT BY 1
START WITH 1
NOMAXVALUE
NOCYCLE
CACHE 10;
insert into test select lpad(test_sequence.nextval,10,0) from dual;--插入数据
select * from test;--检查结果
最后的结果就是0000000001
给你个例子
create table test (id varchar2(10)); --建表
CREATE SEQUENCE test_sequence --建序列
INCREMENT BY 1
START WITH 1
NOMAXVALUE
NOCYCLE
CACHE 10;
insert into test select lpad(test_sequence.nextval,10,0) from dual;--插入数据
select * from test;--检查结果
最后的结果就是0000000001
更多追问追答
追问
求教大侠,基于number是什么意思
追答
就是必须是number才能递增
但是插入到数据库中,可以像上边 lpad(test_sequence.nextval,10,0) 这个方式插入到字段里
不知道这么说你能懂吗?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询