|
su.dbms- SU.DBMS ---------------------------------------------------------------------- From : Dmitry Krivosheyenko 2:5020/400 04 Feb 2002 16:00:37 To : Victor Metelitsa Subject : Re: в чем зло хранимых процедур-2 -------------------------------------------------------------------------------- "Victor Metelitsa" <vvm@cssc.tat.ru> wrote in message news:3C5A9D22.3050502@cssc.tat.ru... > > Dmitry Krivosheyenko wrote: > [...] > > >>Этот пустячок в DB2 есть, вот только другого почти ничего нету. В том > >>числе и полиморфизма (система вызывает метод экземпляра того класса, что > >>ожидает, а не того, что на самом деле). > > > > Имеется ввиду это? > > > > The database server can support routine overloading because it supports > > polymorphism: the ability to have many entities with the same name and to > > choose the entity most relevant to a particular usage. > > .... > > For example, you might create each of the following user-defined functions > > to calculate the area of different data types (each data type represents a > > different geometric shape): > > CREATE FUNCTION area(arg1 circle) RETURNING DECIMAL... > > CREATE FUNCTION area(arg1 rectangle) RETURNING DECIMAL.... > > CREATE FUNCTION area(arg1 polygon) RETURNING DECIMAL.... > > .... > > > > Extending Informix Dynamic Server.2000 > > Version 9.2 September 1999 > Hе думаю. Хотя, может, это просто необычный синтаксис? Вряд ли. Как > Informix себя поведет (синтаксиса я не знаю, пишу наугад): > > CREATE TABLE T( > ... > shape Shape > ) > > где Shape - суперкласс Circle, Rectangle и Poligon > > INSERT INTO T(... shape) VALUES ( ... Circle.new(10,100)) > > и потом > > SELECT area(shape) FROM T WHERE та запись > > что будет вызвано - > > CREATE FUNCTION area(arg1 Circle) RETURNING DECIMAL... > или, как я опасаюсь, > CREATE FUNCTION area(arg1 Shape) RETURNING DECIMAL... > ? Hет, все будет честно. Информикс в зависимости от типа обьекта, находящегося в таблице, вызовет соответствующую реализацию. Иначе, грош-цена была-бы такой перегрузке. -- Regards, Dmitry Krivosheyenko Welcome to: http://formweb.com --- ifmail v.2.15dev5 * Origin: Infocom (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /su.dbms/11965ed135e60.html, оценка из 5, голосов 10
|