Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

397
Vistas
Crear secuencia de PostgreSQL usando una nueva identificación

Quiero crear una secuencia para cada fila creada en la cuenta de la tabla, como os_1, os_2, etc.

¿Cómo puedo obtener la identificación de esta nueva fila e insertarla en el nombre de la secuencia?

 CREATE OR REPLACE FUNCTION public.create_os_seq() RETURNS TRIGGER AS $$ #variable_conflict use_variable BEGIN --CREATE SEQUENCE seqname; EXECUTE format('CREATE SEQUENCE os_', NEW.id); return NEW; END; $$ LANGUAGE plpgsql; CREATE TRIGGER create_os_seq AFTER INSERT ON account FOR EACH ROW EXECUTE PROCEDURE create_os_seq();

cuenta de mesa

 id INT AUTO_INCREMENT nane VARCHAR

Después de crear una secuencia pondré su número en la tabla del sistema operativo

sistema operativo de mesa

 id INT account_id INT
over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

A partir de su pregunta, asumo que desea ocuparse de los valores autoincrementales. Postgres usa el atajo SERIAL en lugar de AUTO_INCREMENT , simplemente cree una tabla como:

 CREATE TABLE so79 (id bigserial primary key, col text);

Eso creará automáticamente una secuencia para usted y asignará su valor como predeterminado para la identificación de la columna. Básicamente lo hará algo como AUTO_INCREMENT . No tiene que usar el disparador para incrementar los valores...

over 4 years ago · Santiago Trujillo Denunciar

0

No hay forma de que crear una secuencia para cada fila sea una buena idea. En su lugar, díganos lo que está tratando de hacer.

Supongo que necesita un indicador de línea de flotación, un punto alto que pretende incrementar en alguna acción. Solo usa un número entero.

 CREATE TABLE foo ( foo_id serial, max_seen int );

Ahora puede hacer lo que sea con disparadores en otras tablas y demás para incrementar max_seen .

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda