Como criar um campo autoincremental no Oracle PL/SQL

O Oracle não tem campos auto incrementais, para simular esta funcionalidade é necessário criar “Sequences”:

[sourcecode language=”SQL”]
CREATE SEQUENCE seqFuncionarios
INCREMENT BY 1
START WITH 1
MAXVALUE 99999
NOCACHE
NOCYCLE;
[/sourcecode]

Para utilizar, a cada linha adicionada ele irá aumentar em 1 (INCREMENT BY 1) o valor desta “sequence”.

[sourcecode language=”SQL”]
INSERT INTO FUNCIONARIOS (ID, NOME) VALUES (seqFuncionarios.nextVal; ‘João’);
INSERT INTO FUNCIONARIOS (ID, NOME) VALUES (seqFuncionarios.nextVal; ‘Roberto’);
[/sourcecode]

João terá ID igual a 1 (START WITH 1) e Roberto terá o ID igual a 2 (INCREMENT BY 1: 1 + 1 = 2).

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Sair da versão mobile