Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

Agregar campo autoincrementable

Estas en el tema de Agregar campo autoincrementable en el foro de Oracle en Foros del Web. Hola que tal, tengo una consulta normal, y quisiera agregar una campo que comienza en el numero uno y se valla incrementando en cada registro. ...
  #1 (permalink)  
Antiguo 26/08/2009, 12:22
 
Fecha de Ingreso: mayo-2008
Mensajes: 51
Antigüedad: 16 años, 6 meses
Puntos: 2
Agregar campo autoincrementable

Hola que tal, tengo una consulta normal, y quisiera agregar una campo que comienza en el numero uno y se valla incrementando en cada registro. Valla pues "como si fuera el numero de regitro".

Ojala alguien me pueda ayudar

saludos a todos. Gracias
  #2 (permalink)  
Antiguo 26/08/2009, 12:31
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: Agregar campo autoincrementable

haz uso de secuencias.

http://www.techonthenet.com/oracle/sequences.php

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 26/08/2009, 13:47
 
Fecha de Ingreso: mayo-2008
Mensajes: 51
Antigüedad: 16 años, 6 meses
Puntos: 2
Respuesta: Agregar campo autoincrementable

agradesco la respuesta, bueno depues de todo , yo lo logre con >rownum<.
  #4 (permalink)  
Antiguo 26/08/2009, 14:05
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: Agregar campo autoincrementable

rownum es una pseudocolumna que se utiliza para efectos visuales pero no hace parte del modelo relacional de la tabla.

si se aplica un order by asc o desc, el rownum cambia para cada uno de los registros.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #5 (permalink)  
Antiguo 31/08/2009, 20:21
 
Fecha de Ingreso: agosto-2009
Mensajes: 7
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Agregar campo autoincrementable

Como dice huesos debes trabajar cin una secuencia, te doy un ejemplo simple de como crearla y como utilizarla:

1. Creo la secuencia:

CREATE SEQUENCE secuencia_test
START WITH 1
MAXVALUE 999999999999999999999999999
MINVALUE 1
NOCYCLE
CACHE 2
ORDER;

2. Ahora la utilizo para insertar en una tabla a través de un procedimiento:

create or replace procedure pbd_test is
t_variable number;
begin
select secuencia_test.nextval into t_variable from dual;
insert into tabla values(t_variable);
end;

El commit lo recomiendo hacer por fuera del procedimiento, sin embargo lo puedes hacer a a través de transacciones autonomas.

Espero te sirva.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:27.