Re: Metodos

From: "ZerGY" <ZkrGY(at)ono(dot)com>
To: "Alvaro Herrera" <alvherre(at)alvh(dot)no-ip(dot)org>
Cc: "Juan Pablo Espino" <jp(dot)espino(at)gmail(dot)com>, <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Metodos
Date: 2005-07-18 16:11:24
Message-ID: 001601c58bb3$58cc2d70$e4047a54@casa
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

>Cual es la
> idea? Cual es el problema que quieres resolver?

Hola.
Miren, no estoy seguro si quizas estoy complicandome demasiado. Yo pretendo
implementar un esquema lógico.
Imaginen el típico ejemplo de 'Profesores imparten Asignaturas'. Esto en un
SGBDR serían simplemente dos relaciones 'unidas' por clave foranea, donde
cada tupla sería un profesor y una asignatura respectivamente.
Bien, eso en un SGBDR, pero en un SGBDOR la forma más lógica de
implementarlo sería crear los tipos profesor y asignatura, con sus atributos
y sus métodos ( por ejemplo, si un atributo es fecha de nacimiento del
profesor, un método podría ser mostrarEdad() ), vaya, tan sólo estoy
aprovechando lo se supone que me proporciona el paradigma de la orientación
a objetos.

Eso es lo único que pretendo, crear tipos con sus atributos y métodos. De
hecho el estandar SQL3 lo permite, por eso me extraña que Postgres no lo
implemente.

Del mismo modo, también he estado buscando en Postgres el tipo REF
(referencia) y no lo encuentro (también lo contempla el estandar SQL3).
En el caso de que Postgres no implemente el tipo REF, ¿Cómo implementan
ustedes las relaciones 1:N ? (Imaginemos que un profesor puede impartir mas
de una asignatura). Con el tipo REF bastaría con un vector de referencias,
pero en caso de que no esten implementadas... no se me ocurre como hacerlo
(si la clave primaria de una asignatura es un entero, desde la relacion
profesores, aunque cree un atributo que sea un vector de enteros (las
asignaturas que imparte), no puedo asignarle a dicho vector la restricción
de clave foranea).

Tengo bastantes dudas en éste sentido porque soy nuevo en Postgres. Estoy
bastante acostumbrado a trabajar en Oracle y veo que aunque ambos sean
SGBDOR, las cosas son bastante diferentes.

Un saludo y gracias por responder.

----- Original Message -----
From: "Alvaro Herrera" <alvherre(at)alvh(dot)no-ip(dot)org>
To: "ZerGY" <ZkrGY(at)ono(dot)com>
Cc: "Juan Pablo Espino" <jp(dot)espino(at)gmail(dot)com>;
<pgsql-es-ayuda(at)postgresql(dot)org>
Sent: Monday, July 18, 2005 5:27 PM
Subject: Re: [pgsql-es-ayuda] Metodos

> On Mon, Jul 18, 2005 at 11:15:45AM -0400, Alvaro Herrera wrote:
>> On Mon, Jul 18, 2005 at 01:02:35PM +0200, ZerGY wrote:
>> > Si, cierto, fallo mio. Postgres es un SGBDOR. En cualquie caso sigo
>> > manteniendo la pregunta. Debe haber alguna manera de declarar metodos
>> > para
>> > los tipos creados.
>>
>> No, no hay.
>
> Ah, pero se me olvido comentar que las funciones admiten sobrecarga. No
> estoy seguro si se consigue lo que quieres en todo caso. Cual es la
> idea? Cual es el problema que quieres resolver?
>
> El sistema de tipos es bastante complejo y ha sufrido muchos cambios
> ultimamente; es posible que cosas que se ven funcionar con version
> actual de desarrollo no lo hacen en las versiones "para el publico".
> Aun asi, que yo sepa no se favorece demasiado el estilo OO en Postgres;
> la herencia es un tema particularmente dejado de lado (funciona, pero
> solo apenas).
>
> --
> Alvaro Herrera (<alvherre[a]alvh.no-ip.org>)
> "Some men are heterosexual, and some are bisexual, and some
> men don't think about sex at all... they become lawyers" (Woody Allen)
>

In response to

  • Re: Metodos at 2005-07-18 15:27:47 from Alvaro Herrera

Responses

  • Re: Metodos at 2005-07-18 16:36:22 from Alvaro Herrera
  • Re: Metodos at 2005-07-18 16:41:05 from Jaime Casanova

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2005-07-18 16:36:22 Re: Metodos
Previous Message Alvaro Herrera 2005-07-18 15:46:36 Re: Metodos