Re: [pgsql-general 2011-1-21:] Are there any projects interested in object functionality? (+ rule bases)

Поиск
Список
Период
Сортировка
От Pavel Stehule
Тема Re: [pgsql-general 2011-1-21:] Are there any projects interested in object functionality? (+ rule bases)
Дата
Msg-id AANLkTimAgSNx3wtkvgeB9=drXYJOtJHRpGyjuCB50PrV@mail.gmail.com
обсуждение исходный текст
Ответ на Re: [pgsql-general 2011-1-21:] Are there any projects interested in object functionality? (+ rule bases)  (Robert Haas <robertmhaas@gmail.com>)
Ответы Re: [pgsql-general 2011-1-21:] Are there any projects interested in object functionality? (+ rule bases)  (Pavel Stehule <pavel.stehule@gmail.com>)
Re: [pgsql-general 2011-1-21:] Are there any projects interested in object functionality? (+ rule bases)  (Robert Haas <robertmhaas@gmail.com>)
Список pgsql-hackers
2011/2/1 Robert Haas <robertmhaas@gmail.com>:
> On Mon, Jan 31, 2011 at 5:09 PM, Nick Rudnick <joerg.rudnick@t-online.de> wrote:
>> Interesting... I remember that some years ago, I fiddled around with
>> functions, operators etc. to allow a method like syntax -- but I ever was
>> worried this approach would have serious weaknesses -- are there any
>> principal hindrances to having methods, if no, can this be implemented in a
>> straightforward way?
>
> It would help if you were a bit more specific.  Do you mean you want
> to write something like foo.bar(baz) and have that mean call the bar
> method of foo and pass it baz as an argument?
>
> If so, that'd certainly be possible to implement for purposes of a
> college course, if you're so inclined - after all it's free software -
> but we'd probably not make such a change to core PG, because right now
> that would mean call the function bar in schema baz and pass it foo as
> an argument.  We try not to break people's code to when adding
> nonstandard features.
>

I has not a standard, so I am not sure what is in standard and what
not. It was a popular theme about year 2000 and OOP was planed to
SQL3. You can find a some presentation from this time. Oracle
implemented these features.

J. Melton: SQL:1999: Understanding Object-Relational and
Other Advanced Features, Morgan Kaufmann, 2003.


CREATE METHOD next_color (n INT)
RETURNS INT
FOR colored_part_t
RETURN SELF.color_id + n

SELECT partno, color_id, DEREF(oid).next_color(1) AS next
FROM colored_parts

some other databases implemented a dereferenced data (it's not only
Oracle's subject)

http://www.java2s.com/Code/Oracle/Object-Oriented-Database/DEREFDereferencetheRowAddresses.htm

Probably DB2 implements this functionality too. See doc for CREATE
TYPE statement, REF USING, NOT FINAL, method specification
CREATE TYPE  type-name      ...    METHOD attribute-name()      RETURNS attribute-type

these features are very nice - but is not well documented and probably not used.

Pavel

> --
> Robert Haas
> EnterpriseDB: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company
>


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Hitoshi Harada
Дата:
Сообщение: Re: Add ENCODING option to COPY
Следующее
От: Pavel Stehule
Дата:
Сообщение: Re: [pgsql-general 2011-1-21:] Are there any projects interested in object functionality? (+ rule bases)