From: | " Martin Pohl" <Nilpherd(at)gmx(dot)net> |
---|---|
To: | Doug McNaught <doug(at)mcnaught(dot)org> |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: Insert a default timestamp when nothing given |
Date: | 2006-01-19 13:43:26 |
Message-ID: | 12051.1137678206@www018.gmx.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Hi,
> > Not directly. I suppose you could create a view that converted the
> > value to the right date on insert.
> I think a trigger might make more sense.
That was a very good idea! I tought it would solve my problem. Unfortunately
it didn't: I still get the "invalid syntax" error (I ensured that the
trigger worked by using other values). Apparently the syntax check is done,
before the trigger is called:
----
create or replace function test() returns trigger as '
begin
if NEW.datum = '''' THEN
NEW.datum := ''01.01.1900'';
end if;
return NEW;
end;
' language plpgsql;
create trigger test before insert or update on foo
for each row execute procedure test();
----
Adding a default value will also not work, since the given date is not a
correct timestampz when inserting. So the default value doesn't help.
I know that inserting '' is wrong in the first place, and that Postgre works
correctly at this point. But I can't help it - the application I have to
port does it and I can't change it. Therefore I need a smart workaround for
a sloppy programming in the application and a sloppy MS SQL.
(This is not meant rude in any way, it's just the situation I was given in a
task)
Does anyone have any other suggestions or ideas?
--
10 GB Mailbox, 100 FreeSMS/Monat http://www.gmx.net/de/go/topmail
+++ GMX - die erste Adresse fr Mail, Message, More +++
From | Date | Subject | |
---|---|---|---|
Next Message | Shane Wright | 2006-01-19 14:06:22 | Re: mount -o async - is it safe? |
Previous Message | Magnus Hagander | 2006-01-19 12:55:24 | Re: Windows re-installation problem |