Re: [GENEAL] dynamically changing table

From: Alban Hertroys <dalroi(at)solfertje(dot)student(dot)utwente(dot)nl>
To: Harald Fuchs <hari(dot)fuchs(at)gmail(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: [GENEAL] dynamically changing table
Date: 2009-03-31 17:39:21
Message-ID: 7D4BA9B6-247A-47FA-A248-23A0997BB6A4@solfertje.student.utwente.nl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Mar 31, 2009, at 6:41 PM, Harald Fuchs wrote:

> In article <437FAA9F-DF2D-429E-9856-EB2026B55940(at)solfertje(dot)student(dot)utwente(dot)nl
> >,
> Alban Hertroys <dalroi(at)solfertje(dot)student(dot)utwente(dot)nl> writes:
>
>> You could add the columns you're sure that you need and put the rest
>> in an XML field.
>
> <mantra>
> If you have a problem and want to solve it using XML, you have two
> problems.
> </mantra>

<mantra>
A mantra is never good argumentation, whether for or against.
</mantra>

I don't like mantras, they're like dogmas, they prevent people from
thinking. I consider them dangerous ;)

> Why serializing the rest of the data in an XML field? contrib/hstore
> seems to accomplish the same, without the XML overhead.

Although I'm no fan of XML, it does have it's benefits. In this case,
it's standardised (which means there are libraries for about every
language to deal with XML data), it can store and constrain type
information (although a bit limited IMO) about the data and there are
many tools for manipulating data contained in XML and those can
usually also be used at the application side of things.

contrib/hstore doesn't do these things for you, so it adds problems of
its own. The OP may run into problems with database layers in his
programming language of choice that can't deal with the specifics of
querying a hstore field for example. If type information in the data
is of importance, he'll have to explicitly cast the data (based on the
key field). If certain fields are constrained to certain value ranges,
he'll have to check those in his application.

It all depends on the requirements of the OP and how far he wants to
go with this, if hstore solves his problem, by all means, go with it.
In either case, using an XML field is a valid solution. Nobody said
it's a perfect one.

Alban Hertroys

--
If you can't see the forest for the trees,
cut the trees and you'll see there is no forest.

!DSPAM:737,49d2554e129747441114695!

In response to

Browse pgsql-general by date

  From Date Subject
Next Message justin 2009-03-31 17:44:19 Re: string_to_array with empty input
Previous Message Greg Stark 2009-03-31 17:06:03 Re: string_to_array with empty input