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

Number formatting



Hi,

Simple question, which is probably something obvious I'm missing.  If
anyone can tell me better how to do what I'm doing, go for it!

This is for a billing system, and I want PostgreSQL to generate unique
reference numbers for each invoice that is something more meaningful
than 1, 2, 3 etc.

So, what I'm trying to do is use a primary key to generate invoice
numbers such as "INV0000001", "INV0000002" etc.  Obviously a sequence
generates the increments, but when I try formatting it, it adds a space
at the beginning of the number.  Here's the "default value" for the
primary key field:

(('INV'::text ||
to_char((nextval('customer_customer_id_seq'::regclass))::integer,
'0000000'::text)))::character varying

However what I end up with is: "INV 0000012"

If I take the "INV" portion out, and simply try and format the sequence
generated, I still get the space added: " 0000013"

(to_char((nextval('customer_customer_id_seq'::regclass))::integer,
'0000000'::text))::character varying

The field is defined as a varchar(10), which allows the 3-digit "INV",
and 7 numeric digits.  I have tried defining it as char(10) but still
get the same.

This is on PostgreSQL 8.1.4, Windows XP.

Thanks

Andy



Home | Main Index | Thread Index

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