Objektrelationale DB, OID, REF, DEREF??

serior

Neuer Benutzer
Beiträge
1
Hallo Zusammen,

Ich muss bei folgendem Code mit einer ID(z.b. 100) den Benutzernamen und Namen der Person selektieren. Wenn ich im where-klausel person.id=100 eintippe, treten jegliche Fehler auf.
Seit zwei Tagen sitze ich dran und habe es nicht verstanden, wie ich die Ref benutzen soll bzw. wie die Aufgabe lösen soll. In SQL kenne ich mich etwas aus, aber in objektrelationales SQL leider überhaupt nicht.
Ich bin für jede Hilfe sehr Dankbar :-(

create type user_typ as (
benutzername varchar(20)
) ref using integer
mode db2sql;

create type person_typ under user_typ as (
nachname varchar(20),
vorname varchar(20)
)
mode db2sql;

create table user of user_typ (
ref is id user generated,
primary key (id)
);

create table person of person_typ
under user inherit select privileges;

insert into user (id, benutzername) values (user_typ(101), 'neu101');
insert into person (id, benutzername, nachname, vorname) values (person_typ(100), 'han100', 'Mai', 'Markus');
 
Werbung:

Bist Du hier einklich weitergekommen? Hast das ja noch woanders gefragt, und da auch nicht viel Hilfe bekommen.

Das mit dem CREATE TYPE selbst kenne ich - von PostgreSQL. Aber die Syntax ist doch arg anders. Ich kann das bei Dir mental nicht verstehen.

Dein person_typ hat z.B. vorname und nachname. Dann machst eine Tabelle von diesem Typ, die dann 4 Felder hat.
Vielleicht durch das 'under user inherit' eine Art Vererbung des user_typ - der hat aber auch nur 1 Feld.
Was macht user_typ(101)? Ist das eine Funktion? Wo kommt die her?

Du verwendest auch eigentlich in SQL reservierte Wörter - user.

Sehr strange das alles ...
 
Zurück
Oben