En esta oportunidad vamos hablas de las secuencias en postgreSql, debido que en ocasiones se nos hace necesario manipular y como no es tan frecuente se nos olvida, pero ya lo tendrán acá siempre para su consulta.

1) Sin mas preámbulo vamos a ver un query para saber cual es el nombre de la secuencia solo con saber el nombre de la tabla:

SELECT table_schema, table_name, substring(column_default FROM
E’\\(\'([a-z_.]+)’) AS secuencia
FROM information_schema.columns
 WHERE column_default ~ ‘_seq’ and table_name=’centro_formacion’

2) Luego de obtener el nombre de la secuencia, técnicamente las secuencia son unas tablas en postgres se puede consultar de varias maneras en esta oportunidad le mostrare dos forma.

  • SELECT currval(‘centro_formacion_id_seq’)
  • select * from centro_formacion_id_seq

3) Actualizando la secuencia.

  •  SELECT setval(‘centro_formacion_id_seq’, 1, true);

4) Obteniendo el siguiente valor de la secuencia

  • SELECT nextval(‘centro_formacion_id_seq’)

Nota: Esto te puede servir mucho cuando necesitamos saber los valores de los identificadores cuando estamos programando y deseamos trabajar con las secuencias de las entidades foráneas.

Anuncios