Ver Mensaje Individual
  #2 (permalink)  
Antiguo 19/03/2010, 09:58
Avatar de huesos52
huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: modificar secuencias

Para ejecutar una sentencia DDL (Data Definition Language) que incorpore una variable dinamica, es necesario hacer uso de execute.

Quedaría así

Código SQL:
Ver original
  1. CREATE OR REPLACE FUNCTION modificar()
  2. RETURNS intege AS $$
  3. DECLARE
  4. valor INTEGER;
  5. BEGIN
  6.    SELECT MAX("ID") INTO valor FROM esquema."TABLA";  
  7.    valor:=valor+1;
  8.    EXECUTE 'ALTER SEQUENCE esquema."TABLA_ID_seq" RESTART  ' || valor;
  9.    RETURN valor;
  10. END;
  11. $$ LANGUAGE plpgsql;


saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming