Re: Объектная модель данных

From: "Andrey N(dot) Oktyabrski" <ano(at)bestmx(dot)ru>
To: Dmitriy Igrishin <dmitigr(at)gmail(dot)com>
Cc: pgsql-ru-general <pgsql-ru-general(at)postgresql(dot)org>
Subject: Re: Объектная модель данных
Date: 2011-02-25 14:23:02
Message-ID: 4D67BB46.6060003@bestmx.ru
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-ru-general

On 02/25/11 15:06, Dmitriy Igrishin wrote:
> Пример:
> create table A (id int, name text);
> create table B (txt text) inherits A;
>
> select id, name from A;
>
> Выбраны все записи как из A, так и из B. Чего тут сложного-то?
> Никаких чрезмерных усилий :-)
>
> Или это не о том?
>
> Пример является надуманным. Даже имена выбраны так, что понять
> их предназначение невозможно.
Естественно, я не буду приводить тут примеры из реальных приложений. Они
занимают слишком много места.

> На практике же, когда анализ предметной области выявляет концепции
> проекта, следующим шагом после установления связей между ними,
> является определение операций над этими концепциями. И если две
> концепции связаны наследованием, то последнее не очень полезно
> без полиморфизма.
И он есть, как показал мой надуманный пример. Как минимум, для операции
select над концепциями A & B :-)

> Так вот определить полиморфные операции непосредственно в
> PostgreSQL (в том же PL/pgSQL) невозможно. Возможно только
> прилагая большую сообразительность и мастерство.
Не, мы всё-таки о разных вещах. Я о том, что операций над данными только
четыре штуки - select, insert, update, delete.

> Что касается понятия наследования, реализованного в
> PostgreSQL (INHERITANCE clause). Принимая в расчёт ограничения,
> указанные в п. 5.8.1, я вообще не понимаю зачем этот функционал был
> добавлен в PostgreSQL? Разве что только для выборки из всех таблиц,
> олицетворяющих производные классы, через таблицу, представляющую
> базовый класс (как в примере выше)? :-)
Почему только выборки? UPDATE/DELETE тоже.

In response to

Responses

Browse pgsql-ru-general by date

  From Date Subject
Next Message Dmitriy Igrishin 2011-02-25 14:38:22 Re: Объектная модель данных
Previous Message Dmitriy Igrishin 2011-02-25 12:06:15 Re: Объектная модель данных