Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search for
  Advanced Search

plpgsql question: inserting records




There has to be an easy way to do this and I'm just being stupid and missing it. What I want to do is, in plpgsql, insert a record (of the right type) into a table without having to list all the columns of the table. For example, I'd like to do:

CREATE FUNCTION example(id_to_copy INTEGER) RETURNS VOID AS $_$
DECLARE
   t_rec RECORD;
BEGIN
   FOR t_rec IN
       SELECT
           *
       FROM
           table_with_lots_of_columns
       WHERE
           unique_id = id_to_copy
   IN
       t_rec.unique_id := new_unique_id();
       INSERT INTO table_with_lots_of_columns VALUES t_rec; -- or something
   END LOOP;
END
$_$ LANGUAGE plpgsql;

Now, I can do this by listing all the columns from the table, but this is annoying. Is there a way to do this cleaner?


Thanks,
Brian




Home | Main Index | Thread Index

Privacy Policy | PostgreSQL Archives hosted by Command Prompt, Inc. | Designed by tinysofa
Copyright © 1996 – 2008 PostgreSQL Global Development Group