在往数据库中增加新的记录的时候,很多时候表的主键为id的自增长的主键,但是orcal数据库又不支持主键的自增长。这个时候可以采用orcal的序列号生成器来自动的为我们生成自增长的主键。
下面来看下具体的代码和步骤:
首先在orcal中新建一个序列sequence,我用的是PL/SQL。如下图
然后在其中填入数据再点击应用就可以了
然后在项目中写一个读取这个序列sequence的接口,具体的代码 如下
public interface SeqMapper {
public Long getBySeqName(String name);
}
对应的xml文件为
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org/DTD Mapper 3.0" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mapper.SeqMapper">
<select id="getBySeqName" resultType="long" parameterType="string">
select ${_parameter}.nextval from dual
</select>
</mapper>
然后就可以在程序中进行使用了,使用的方式如下:
Long Id = seqMapper.getBySeqName("SEQ_T");
这个getBySeqName()中的参数就是在数据库中创建的序列sequence的名称。
这样得到的id就会是每次访问的时候都自增长1,你也可以改成你想要增长的数字,这个就需要在创建序列的时候进行定义。