ACTUALIZAR una fila entera en PL / pgSQL
Tengo la función plpgsql:
CREATE OR REPLACE FUNCTION test() RETURNS VOID AS
$
DECLARE
my_row my_table%ROWTYPE;
BEGIN
SELECT * INTO my_row FROM my_table WHERE id='1';
my_row.date := now();
END;
$ LANGUAGE plpgsql;
Me gustaría saber si es posible ACTUALIZAR directamentemy_row
grabar.
La única manera que he encontrado para hacerlo ahora es:
UPDATE my_table SET date=now() WHERE id='1';
Tenga en cuenta que esto es solo una función de ejemplo, la real es mucho más compleja que esta.
Estoy usando PostgreSQL 9.2.
ACTUALIZAR:
Perdón por la confusión, lo que quería decir es:
SELECT * INTO my_row FROM my_table INTO my_row WHERE id='1';
make_lots_of_complicated_modifications_to(my_row, other_complex_parameters);
UPDATE my_row;
Es decir. Usa mi_row
para persistir la información en la tabla subyacente. Tengo muchos parámetros para actualizar.