2011/2/1 Robert Haas <robertmh...@gmail.com>: > On Mon, Jan 31, 2011 at 5:09 PM, Nick Rudnick <joerg.rudn...@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 > -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers