oracle主键自增长
时间: 2023-10-20 22:36:55 浏览: 82
oracle主键自增
Oracle数据库中,主键自增长是通过序列(Sequence)和触发器(Trigger)来实现的。下面是一个示例:
首先,创建一个序列:
```sql
CREATE SEQUENCE my_sequence
START WITH 1
INCREMENT BY 1
NOMAXVALUE
NOCYCLE
NOCACHE;
```
然后,在需要自增长主键的表上创建一个触发器:
```sql
CREATE OR REPLACE TRIGGER my_trigger
BEFORE INSERT ON my_table
FOR EACH ROW
BEGIN
SELECT my_sequence.NEXTVAL INTO :new.id FROM dual;
END;
```
在上述示例中,`my_sequence`是序列的名称,`my_table`是需要自增长主键的表名,`id`是主键列的名称。每次插入新行时,触发器会将序列的下一个值赋给主键列的值。
请注意,以上示例仅为演示目的,实际应用中可能需要根据具体情况进行调整。
阅读全文