On Thu, 2003-10-09 at 12:54, Sean Chittenden wrote:
> > > > Is there any date type that can be used for 0-255 values? Like
> > > > an "int1" or byte column.
> > >
> > > A SMALLINT is two bytes on disk, use "char" instead.  This is a hidden
> > 
> > However "char" has some serious deficiencies IIRC, such as the fact
> > that there's no int<->"char" casts and it's standard I/O format is
> > characters.  You can use ascii and chr to get around some of that,
> > but it's ugly.
> 
> *nods* I have explicit casts everywhere when dealing with "char" and
> it's far from being elegant or clean.
> 
> > 
> > > goodie in PostgreSQL and one that I wish was exposed via a more
> > > conventional syntax (*hint hint*).
> > 
> > If we were going to do that I think we'd be better off making a new
> > type and leaving "char" alone.
> > 
> 
> You won't hear any disagreements from me on this one.  I've
> sufficiently abused "char" as a 1 byte storage field and would love to
> see an int1 or tinyint datatype added to cover this situation.  -sc

http://www.postgresql.org/docs/7.3/static/sql-createdomain.html
  CREATE DOMAIN domainname [AS] data_type
       [ DEFAULT default_expr ]
       [ constraint [, ... ] ]
   
   where constraint is:
   
   [ CONSTRAINT constraint_name ]
   { NOT NULL | NULL }

test1=# create domain d_tinyint as smallint constraint chk_tinyint CHECK (smallint 
between 0 and 255);
ERROR:  DefineDomain: CHECK Constraints not supported

So, how would I create a domain that limits a smallint?

-- 
-----------------------------------------------------------------
Ron Johnson, Jr. [EMAIL PROTECTED]
Jefferson, LA USA

"You can either have software quality or you can have pointer
arithmetic, but you cannot have both at the same time."
Bertrand Meyer


---------------------------(end of broadcast)---------------------------
TIP 4: Don't 'kill -9' the postmaster

Reply via email to