Re: Tipo de datos

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: Reynier Perez Mira <rperezm(at)uci(dot)cu>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Tipo de datos
Date: 2009-03-17 22:04:43
Message-ID: 20090317220442.GM4202@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Reynier Perez Mira escribió:

> De esta forma tengo una relación n:m porque un producto puede estar en
> muchas categorías y una categoría puede tener muchos productos. Cual
> es mi idea: cuando inserte una tupla en la tabla productos que debe
> contener una llave foránea o una columna para almacenar los ID's de
> las categorias a la cual pertenece el producto se me inserten los ID's
> en forma de arreglo. Una mejor explicación:
>
> productos
> - - - - - - - - - - -
> id nombre id_categoria
> 1 Producto1 1,2,3,4,5,6,7,8
>
> Lo que me da a entender que el Producto1 pertenece a las categorías:
> 1,2,3,4,5,6,7 y 8. ¿Se puede hacer esto o es un disparate de mi parte?
> He visto que PostgreSQL tiene un tipo de datos que según mi percepción
> de programador es un arreglo, por ejemplo: int[], varchar[], etc y me
> preguntaba si era posible.

Es un disparate. O mejor dicho, se puede hacer pero es mala idea.
Normalmente esto se modela con una tupla por cada categoría a la que
pertenece cada producto. Esto es en una tabla separada, digamos
producto_categorias, con dos columnas, id_producto e id_categoria.

--
Alvaro Herrera http://www.amazon.com/gp/registry/CTMLCN8V17R4
"Once again, thank you and all of the developers for your hard work on
PostgreSQL. This is by far the most pleasant management experience of
any database I've worked on." (Dan Harris)
http://archives.postgresql.org/pgsql-performance/2006-04/msg00247.php

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Gabriel Ferro 2009-03-17 23:03:18 recuperar serials
Previous Message Reynier Perez Mira 2009-03-17 21:58:11 Tipo de datos