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

[SOLUCIONADO] Insertar el primer ID

Estas en el tema de Insertar el primer ID en el foro de PostgreSQL en Foros del Web. No se como es el insert para que se inserte el primer id. Yo tengo algo como esto insert into tabla1(idtabla) values((select max(idpedido)+1 from tabla1)) ...
  #1 (permalink)  
Antiguo 24/01/2013, 11:14
Avatar de elemperador88  
Fecha de Ingreso: enero-2013
Mensajes: 13
Antigüedad: 11 años, 3 meses
Puntos: 1
Insertar el primer ID

No se como es el insert para que se inserte el primer id. Yo tengo algo como esto insert into tabla1(idtabla) values((select max(idpedido)+1 from tabla1)) pero el problema que no me toma el vació, se que se puede hacer con un case, pero no se como, si me mostrara como se lo agradecería mucho.
  #2 (permalink)  
Antiguo 24/01/2013, 12:21
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Insertar el primer ID

Te recomiendo que hagas uso de secuencias.
Con una base de datos concurrente, la forma como lo tienes tiende a generar muchos errores.

Código SQL:
Ver original
  1. CREATE SEQUENCE seq_tabla;
  2. INSERT INTO tabla1(idtabla) VALUES(NEXTVAL('seq_tabla'));
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 25/01/2013, 07:38
Avatar de elemperador88  
Fecha de Ingreso: enero-2013
Mensajes: 13
Antigüedad: 11 años, 3 meses
Puntos: 1
Respuesta: Insertar el primer ID

Esta muy bueno el aporte, el único problema que si el consecutivo va en 6 y se borra la tabla, el primer registro sale como 7
  #4 (permalink)  
Antiguo 25/01/2013, 07:38
Avatar de elemperador88  
Fecha de Ingreso: enero-2013
Mensajes: 13
Antigüedad: 11 años, 3 meses
Puntos: 1
Respuesta: Insertar el primer ID

Cita:
Iniciado por huesos52 Ver Mensaje
Te recomiendo que hagas uso de secuencias.
Con una base de datos concurrente, la forma como lo tienes tiende a generar muchos errores.

Código SQL:
Ver original
  1. CREATE SEQUENCE seq_tabla;
  2. INSERT INTO tabla1(idtabla) VALUES(NEXTVAL('seq_tabla'));
Esta muy bueno el aporte, el único problema que si el consecutivo va en 6 y se borra la tabla, el primer registro sale como 7
  #5 (permalink)  
Antiguo 25/01/2013, 12:14
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Insertar el primer ID

Y que necesidad tienes que la numeración sea almacenada en orden?
Un id no requiere estar en orden.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming

Etiquetas: primer
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 20:28.