Re: DB structure for logically similar objects in different

From: Eci Souji <eci(dot)souji(at)gmail(dot)com>
To: Roman Neuhauser <neuhauser(at)sigpipe(dot)cz>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: DB structure for logically similar objects in different
Date: 2006-05-29 12:10:43
Message-ID: 447AE4C3.8040708@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Roman Neuhauser wrote:
> # eci(dot)souji(at)gmail(dot)com / 2006-05-28 16:13:20 -0400:
>
>>Basically we've got several different "states" that an item can be in.
>>From what I've seen the way many places seem to deal with them is
>>something along the lines of making bool values that act as
>>switches...
>>
>>Ex:
>>table items:
>>item_id
>>name
>>description
>>is_active
>>is_sold_out
>>is_banned
>>
>>Now we've started to see some problems with this sort of design.
>>Namely we need to run sanity tests on every page that hits the items
>>table to make sure is_active is true, is_sold_out is false, is_banned
>>is false so on and so forth. I was thinking of splitting up states
>>into different tables ala...
>>
>>table items_active:
>>item_active_id
>>name
>>description
>>
>>table items_sold_out:
>>item_sold_out_id
>>name
>>description
>
>
> would views help?
>
> CREATE VIEW items_to_sell AS
> SELECT item_id, name, description
> FROM items
> WHERE is_active = 1 AND is_sold_out = 0 AND is_banned = 0;
>

Views work for querying the chunks of data that match different states,
but if I was looking for information based on a single item_id wouldn't
I still need the sanity checks?

- Ec

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Eci Souji 2006-05-29 12:18:16 Re: DB structure for logically similar objects in different
Previous Message Martijn van Oosterhout 2006-05-29 12:01:15 Re: UTF-8 context of BYTEA datatype??