Databases Reference
In-Depth Information
es u. a. möglich, einzelne Daten zu einem Typen kompakt zu-
sammen zu fassen. Ansätze zur Objektorientierung, die mitt-
lerweile auch in PL/SQL umgesetzt werden können, werden in
diesem Buch aus Platzgründen und da sie sich in den Stored
Procedure-Ansätzen verschiedener Datenbanken relativ stark
unterscheiden, nicht betrachtet.
Die generelle Form der Typ-Deklaration sieht wie folgt aus.
TYPE <Typname> IS RECORD(
<Atributsname1> <Typ1> ,
...
<AttributsnameN> <TypN>
);
Deklariert man eine Variable r vom Typ Typname, so kann man
über die Punktnotation auf die einzelnen Attribute, also
r.<AttributnameI> zugreifen. Die folgende Prozedur dient zur
Analyse der Semantik von Records, man sieht weiterhin, dass
man kurze Kommentare mit -- beginnend einfügen kann. Die
Kommentare gehen dann bis zum Zeilenende. Längere Kom-
mentare beginnen mit /* und enden mit */ .
CREATE OR REPLACE PROCEDURE RecordTest
IS
TYPE T1 IS RECORD(
X NUMBER,
Y NUMBER
);
TYPE T2 IS RECORD(
X NUMBER,
Y NUMBER
);
A T1;
B T1 DEFAULT A;
C T2;
BEGIN
A.x:=1;
A.y:=2;
-- DBMS_OUTPUT.PUT_LINE(A); geht nicht
DBMS_OUTPUT.PUT_LINE('A.x= '||A.x);
DBMS_OUTPUT.PUT_LINE('A.y= '||A.y);
DBMS_OUTPUT.PUT_LINE('B.x= '||B.x);
DBMS_OUTPUT.PUT_LINE('B.y= '||B.y);
DBMS_OUTPUT.PUT_LINE(B.y); -- leere Zeile
B.x:=1;
B.y:=2;
-- IF A=B ist verboten
IF A.x=B.x AND A.y=B.y
PL/SQL-
RECORD
PL/SQL-
Kommentare
253
Search WWH ::




Custom Search