Re: Using Insert - Default in a condition expression ?? - Mailing list pgsql-general

From A. Kretschmer
Subject Re: Using Insert - Default in a condition expression ??
Date
Msg-id 20090929065422.GC2463@a-kretschmer.de
Whole thread Raw
In response to Re: Using Insert - Default in a condition expression ??  (Sim Zacks <sim@compulab.co.il>)
Responses Re: Using Insert - Default in a condition expression ??  (Postgres User <postgres.developer@gmail.com>)
List pgsql-general
In response to Sim Zacks :
> >
> > I'm trying to write an INSERT INTO statement that will use a DEFAULT
> > value when an input parameter is null.
> >
> Neither of my 2 methods are pretty.
> 1) Use a trigger.
> 2) Grab and cast the default value from the information_schema.columns
> view and plug it in.
>
> Another option is to build your insert sql as a string and then execute it.

Another option:

rewrite your function:

CREATE OR REPLACE FUNCTION "name_add" (p_name varchar, p_created_date
date) RETURNS integer AS $$ BEGIN case when $2 is null then INSERT INTO
names(name, created_date) values (p_name,  default); else insert into
names values ($1, $2); end case; return 1; end; $$ language plpgsql;


Andreas
--
Andreas Kretschmer
Kontakt:  Heynitz: 035242/47150,   D1: 0160/7141639 (mehr: -> Header)

pgsql-general by date:

Previous
From: Postgres User
Date:
Subject: Re: Using Insert - Default in a condition expression ??
Next
From: Peter Eisentraut
Date:
Subject: Re: sync structures