From: | Darren Duncan <darren(at)darrenduncan(dot)net> |
---|---|
To: | Mike Christensen <mike(at)kitchenpc(dot)com> |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: Is there a reason why Postgres doesn't have Byte or tinyint? |
Date: | 2012-01-08 07:35:24 |
Message-ID: | 4F09473C.7080802@darrenduncan.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Mike Christensen wrote:
>>> According to the manuals, Postgres has smallint (2 byte), integer (4
>>> bytes) and bigint (8 bytes).. I use a lot of structures with "bytes"
>>> in my code and it's kinda annoying to cast DB output from Int16 to
>>> Byte every time, especially since there's no explicit cast in .NET and
>>> you have to use System.Convert().
>>>
>>> Is there a work-around, or do people just cast or use Int16 in their
>>> data structures? Just wondering.. I know on modern computers it
>>> probably doesn't make any difference anyway..
>>
>> Is this just about programmer convenience or is it about space efficiency in
>> the database? BYTEA might help you. Or try declaring a DOMAIN over
>> SMALLINT that limits allowed values to the range of a byte. -- Darren Duncan
>
> This is purely programmer convenience.
>
> Basically, I want Npgsql to marshal the value as a .NET Byte type, if
> I can find a way to do that I'm happy. Perhaps it's more of a Npgsql
> question, though I'm curious as to why Postgres doesn't have an
> intrinsic tinyint or byte type.
Maybe Postgres doesn't need a Byte type predefined because it gives you the
means to define the type yourself, such as using DOMAIN.
Generally speaking, I believe it is more important for a type system to provide
the means for arbitrary user-defined types which can be used in all the places
as built-in-defined types, than to have large numbers of built-in-defined types.
-- Darren Duncan
From | Date | Subject | |
---|---|---|---|
Next Message | Scott Marlowe | 2012-01-08 07:58:53 | Re: Is there a reason why Postgres doesn't have Byte or tinyint? |
Previous Message | Mike Christensen | 2012-01-08 07:27:59 | Re: Is there a reason why Postgres doesn't have Byte or tinyint? |