|    
			
				16/03/2013, 10:39
			
			
			  | 
  |   |  |  |  |  Fecha de Ingreso: mayo-2012 
						Mensajes: 38
					 Antigüedad: 13 años, 5 meses Puntos: 0 |  | 
  |   Problema Substr Trigger 
  Cordial saludoTengo la siguiente tabla:
 
 create table prueba(nombre char(4));
 
 A esa tabla le hice un trigger BEFORE INSERT para hacerle un substr al campo nombre:
 
 CREATE OR REPLACE FUNCTION tr_before_prueba()
 RETURNS trigger AS
 $BODY$DECLARE
 BEGIN
 IF(TG_OP='INSERT') THEN
 NEW.nombre = substr(NEW.nombre::text,0,3);
 RETURN NEW;
 END IF;
 END;$BODY$
 LANGUAGE plpgsql VOLATILE
 COST 100;
 
 
 CREATE TRIGGER tr_before_prueba
 BEFORE INSERT
 ON prueba
 FOR EACH ROW
 EXECUTE PROCEDURE tr_before_prueba();
 
 
 Pero al hacer un insert como el siguiente:
 insert into prueba(nombre)values('colombiaaaaa');
 
 Me genera el siguiente error:
 ERROR:  el valor es demasiado largo para el tipo character(4)
 
 No entiendo por que no hace el substr del trigger
 
 Muchas Gracias a quien pueda ayudarme.
     |