Re: How to avoid nulls while writing string for dynamic query - Mailing list pgsql-sql

From Kumar
Subject Re: How to avoid nulls while writing string for dynamic query
Date
Msg-id 00c801c3f200$e117eff0$7502a8c0@hdsc.com
Whole thread Raw
In response to How to avoid nulls while writing string for dynamic query  ("Kumar" <sgnerd@yahoo.com.sg>)
Responses Re: How to avoid nulls while writing string for dynamic query
List pgsql-sql
oh, ok understood.
What will happen for a timestamp field. Let us say c1 is a timestamp column.

sqlstr := 'insert into test(c1, c2) values
('||'\''||COALESCE(rec.c1,'NULL')||'\','
> >         ||'\''||rec.c2||'\')';

If this case the query will be
insert into test(c1,c2) values ('2004-02-13', 'Hai')

If there is a null value encountered i will return an error for the
following query
insert into test(c1,c2) values ('NULL', 'Hai')
ERROR:  Bad timestamp external representation 'NULL'

I think using 'CASE' this could be solved. But instead is there any other
simple way to do it.

Thanks a lot Mr. Tomasz Myrta
Kumar


----- Original Message ----- 
From: "Tomasz Myrta" <jasiek@klaster.net>
To: "Kumar" <sgnerd@yahoo.com.sg>
Cc: "psql" <pgsql-sql@postgresql.org>
Sent: Friday, February 13, 2004 12:03 PM
Subject: Re: [SQL] How to avoid nulls while writing string for dynamic query


> Dnia 2004-02-13 05:53, Użytkownik Kumar napisał:
>
> > I am having problem there. see what happens
> >
> > sqlstr := 'insert into test(c1, c2) values
('||COALESCE(rec.c1,'NULL')||','
> >         ||'\''||rec.c2||'\')';
>
> You are preparing a string, so make sure you have strings everywhere:
> sqlstr := 'insert into test(c1, c2) values
> ('||COALESCE(rec.c1::text,'NULL')||','||'\''||rec.c2||'\')';
>
> Regards,
> Tomasz Myrta



pgsql-sql by date:

Previous
From: Mona
Date:
Subject: How to unsubscribe
Next
From: Richard Huxton
Date:
Subject: Re: 7.4 - FK constraint performance