Nested classes

Поиск
Список
Период
Сортировка
От Ferruccio Zamuner
Тема Nested classes
Дата
Msg-id yam7513.2594.137981104@mail.chierinet.it
обсуждение исходный текст
Список pgsql-sql
Hi all,

I want to define one class as compound object of user defined classes and
basic types.

something like:

CREATE TABLE attributes {
   Strenght  int,
   Health    int,
   Mana     int,
   Inteligence int
};

CREATE TABLE character {
   Name     text,
   Role       text,
   Damage  int,
   Defense  int,
   Age        int,
   Attributes  attributes
};

CREATE TABLE player {
   Name text,
   Age   int,
   Telephone text,
   Character  character
};

This is something like defining a C++ class with other user-defined classes as
attributes (no derivation, but containment).
Postgres 6.3.1 accepts the definitions above but the problems come when I want
to insert records of "player" type.

I have the following questions:
1. Is there any syntactic sugar (as { } for arrays) for INSERTing a new
"player" including its Character sub-object?
2. what about the same problem using a COPY to populate the DB from ascii
file?
3. after eventually having populated the DB, I'd like to write something like:
    SELECT Character.Name, Character.Attributes.Intelligence  FROM player
WHERE Age<18 AND Character.Age > 25;
    to extract the name and intelligence of all the characters older than 25
played by people younger than 18

I know that some form of composite classes can be defined inserting OIDs of
sub-objects as attributes but this seems a bit weak and tricky solution. Is
there a better one?

Thanks in advance
Ferruccio


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

Предыдущее
От: James Olin Oden
Дата:
Сообщение: Sequences...
Следующее
От: "STMIK Stikubank"
Дата:
Сообщение: select question