Re: [GENERAL] Default Value in Table Setup Help

2003-08-18 Thread Bruno Wolff III
On Mon, Aug 18, 2003 at 14:57:12 -0400,
  Dev <[EMAIL PROTECTED]> wrote:
> Hello all,
> 
> I am working on setting up a table that will append a sequence to the end 
> of the value inserted.
> Example;
> INSERT INTO test (test) VALUES ('abcd');
> And have the data in the database be;
> abcd0001
> 
> Now I do have things setup else where were the default value for the field 
> is such:
> default ('abcd'::text || lpad(text(nextval('test_sequence'::text)), 4, 
> '0'::text))
> 
> But i want the "abcd" or what erver to be added in the insert?
> 
> What am I missing to make this happen?

I think you want to use a trigger to do this. The default function only
gets used if you don't supply a value.

---(end of broadcast)---
TIP 7: don't forget to increase your free space map settings


Re: [GENERAL] Default Value in Table Setup Help

2003-08-18 Thread Stephan Szabo
On Mon, 18 Aug 2003, Dev wrote:

> Hello all,
>
> I am working on setting up a table that will append a sequence to the end
> of the value inserted.
> Example;
> INSERT INTO test (test) VALUES ('abcd');
> And have the data in the database be;
> abcd0001
>
> Now I do have things setup else where were the default value for the field
> is such:
> default ('abcd'::text || lpad(text(nextval('test_sequence'::text)), 4,
> '0'::text))
>
> But i want the "abcd" or what erver to be added in the insert?
>
> What am I missing to make this happen?

You don't want to use a default (since that'll be ignored if you actually
pass in a value for the column).  You probably want a before trigger that
alters the value that was inserted before the insertion actually happens.


---(end of broadcast)---
TIP 3: if posting/reading through Usenet, please send an appropriate
  subscribe-nomail command to [EMAIL PROTECTED] so that your
  message can get through to the mailing list cleanly


Re: [GENERAL] Default Value in Table Setup Help

2003-08-18 Thread Adam Kavan
At 02:57 PM 8/18/03 -0400, Dev wrote:
Hello all,

I am working on setting up a table that will append a sequence to the end 
of the value inserted.
Example;
INSERT INTO test (test) VALUES ('abcd');
And have the data in the database be;
abcd0001

Now I do have things setup else where were the default value for the field 
is such:
default ('abcd'::text || lpad(text(nextval('test_sequence'::text)), 4, 
'0'::text))

But i want the "abcd" or what erver to be added in the insert?

What am I missing to make this happen?
I don't think you can do what you want to do with a column 
default.  Instead you want to look at the rewrite rules.  You can find 
information about them here:

http://www.postgresql.org/docs/7.3/interactive/sql-createrule.html

If I'm wrong I'm sure someone here will correct me :).

--- Adam Kavan
--- [EMAIL PROTECTED] 

---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]