El objetivo de esto es que se pueda hacer select sobre la tabla borradoscopia 
de tal forma que se pueda recuperar uno u varios registros, dependiendo del 
criterio de busqueda

----- Mensaje reenviado -----
>De: Alejandro Carrillo <faster...@yahoo.es>
>Para: "pgsql-es-ayuda@postgresql.org" <pgsql-es-ayuda@postgresql.org>
>CC: "alvhe...@alvh.no-ip.org" <alvhe...@alvh.no-ip.org>
>Enviado: martes 15 de noviembre de 2011 10:56
>Asunto: Re: [pgsql-es-ayuda] recorrer old
>
>
>Siguiendo con el tema, tengo un problema ya que al grabar en la tabla 
>borradoscopia los campos y sus valores, no los graba en el orden de creación 
>de los campos en la tabla, sino en el orden que le da la gana. Esto es debido 
>a la función hstore que ejecuta ese trabajo de esa forma. ¿Como podría cambiar 
>este orden (usando alguna funcion de hstore) de tal forma que aparezcan 
>ordenados usando el orden de creación en la tabla de la BD?
>
>
>Gracias
>
>
>Anexo function actual
>
>
>
>/* esta funcion va asociada a todos los triggers de cada tabla donde se deseé 
>el borrado fisico con copia*/
>create or replace function public.fn_borradocopia () returns trigger
>as
>$$
>declare 
>    arrDatos bytea[]; 
>   
 arrCampos bytea[]; 
>    i integer := 1;
>    r record;
>begin    
>    FOR r IN SELECT (each(hstore(OLD))).* 
>    LOOP 
>        arrCampos[i] := r.key;
>        arrDatos[i] := r.value; 
>        --RAISE NOTICE 'key:%, value: %', r.key, r.value; 
>        i=i+1;
>    END LOOP;
>    insert into borradoscopia values (TG_RELNAME,arrCampos,arrDatos);
>    return OLD;
>end;
>$$
>LANGUAGE plpgsql VOLATILE
>  COST 100;
>
>--aca van cada trigger para cada tabla
>drop TRIGGER trg_borradocopia on clientesborradocopia;
>CREATE TRIGGER trg_borradocopia BEFORE DELETE ON clientesborradocopia
>    FOR EACH ROW EXECUTE PROCEDURE  fn_borradocopia () ;  
>
>DELETE from clientesborradocopia where idcliente = 1
>
>
>
>>________________________________
>>De: Alejandro Carrillo <faster...@yahoo.es>
>>Para: Alvaro Herrera <alvhe...@alvh.no-ip.org>
>>CC: "pgsql-es-ayuda@postgresql.org" <pgsql-es-ayuda@postgresql.org>
>>Enviado: martes 8 de noviembre de 2011 14:51
>>Asunto: Re: [pgsql-es-ayuda] recorrer old
>>
>>
>>jajajaj muy chistoso. ¿O es que en postgresql no soporta arrays 
>>multidimensionales en una funcion?
>>
>>
>>
>>
>>>________________________________
>>>De: Alvaro Herrera <alvhe...@alvh.no-ip.org>
>>>Para: Alejandro Carrillo <faster...@yahoo.es>
>>>CC: Ayuda <pgsql-es-ayuda@postgresql.org>
>>>Enviado: martes 8 de noviembre de 2011 14:47
>>>Asunto: Re: [pgsql-es-ayuda] recorrer old
>>>
>>>
>>>Excerpts from Alejandro Carrillo's message of mar nov 08 15:47:43 -0300 2011:
>>>> porq la tabla solo tiene 2 campos:
>>>> 
>>>> drop TABLE borradoscopia;
>>>> 
>>>> CREATE TABLE borradoscopia
>>>> (
>>>>   tabla character varying(80) NOT NULL,
>>>>   registro bytea[][] NOT NULL 
>>>> );
>>>
>>>entonces borrala y hazla de nuevo.
>>>
>>>-- 
>>>Álvaro Herrera <alvhe...@alvh.no-ip.org>
>>>
>>>
>>>
>>
>>
>
>

Responder a