Abstrakte eller STRUCTURED-datatyper er typemekanismer til at modellere og gemme komplekse objekter i en relationsdatabase. STRUCTURED-typer, der indeholder flere felter, f.eks. en geometrisk figur (en liste med kartesiske koordinater) eller en medarbejder (navn, adresse, køn, fødselsdato og medarbejdernummer), kan modelleres og gemmes i DB2 Universal Database.
Understøttelsen af STRUCTURED-typer er udvidet, så du kan oprette tabeller med kolonner, der indeholder STRUCTURED-typer. Desuden kan STRUCTURED-typer indlejres i andre STRUCTURED-typer. Det vil sige, at attributterne i en STRUCTURED-type ikke længere skal være grundlæggende SQL-typer, de kan nu være en anden STRUCTURED-type.
I Version 7 kan du definere funktioner med inputparametre eller parametre af STRUCTURED-typer i RETURNS-udtrykket. Du kan også definere metoder for hver STRUCTURED-datatype, hvilket muliggør indlejring af funktionalitet med data.En metode defineres stort set som en funktion, men brugen af den hænger nøje sammen med STRUCTURED-typer. En metode er en rutine med en forekomst af en STRUCTURED-type som implicit første argument.
Funktionerne REORG (Reorganisér tabel) og db2look kan anvendes på tabeller med kolonner af STRUCTURED-type. Der er flere oplysninger om REORG i Command Reference. Der er flere oplysninger om STRUCTURED-typer og db2look i Administration Guide: Implementation og Administration Guide: Performance.
Transformeringsfunktioner tillader brug af kolonner af STRUCTURED-typer sammen med brugerprogrammer. Transformerinsfunktionerne konverterer den komplekse struktur i en STRUCTURED-datatype til et ordnet sæt af grundlæggende SQL-typer. De konverterer også de grundlæggende attributter tilbage til STRUCTURED-typerne. Transformeringerne er nødvendige for at flytte STRUCTURED-typer til og fra en database. Der er flere oplysninger i Administration Guide: Implementation.
En indlejret SQL-funktion indeholder simple SELECT-proceduresætninger, som er indlejret i den kaldende SQL-kode (på samme måde som en makro). Det gør det muligt for forespørgselscompileren at optimere hele SQL-sætningen, herunder den indlejrede SQL-funktion. STRUCTURED-datatyper bruger indlejrede SQL-funktioner til deres transformeringsfunktioner (se under Transformeringsfunktioner) og metoder (se under STRUCTURED-typer).
DB2 Version 7.2 giver mulighed for at bruge dynamisk sammensatte sætninger, som er en ny type sammensat SQL. Disse sætninger hjælper med at reducere tidstillæg i databasesystemet og forbedrer ydeevnen af forespørgsler på hele netværket. Dynamisk sammensatte sætninger er ideelle til korte kommandofiler, som omfatter meget lidt kontrol af flow-logik, men store mængder af datastrømme.
I en dynamisk sammensat sætning kan du:
DB2 kompilerer den dynamisk sammensatte sætning til en enkelt sætning. Der er flere oplysninger i DB2 Release Notes.
DB2 Version 7.2 kan udføre proceduremæssig logik i lagrede procedurer, triggere og SQL-sætninger ved hjælp af et antal SQL-kontrollerede sætninger.
Før Version 7.2 gav triggere kun mulighed for enkel sekventiering, der var ingen betingelseslogik eller loop. Forbedringen af triggere gør det lettere at overføre applikationer til DB2. Du kan også drage nytte af forbedringerne i SQL-funktionerne som f.eks. SCALAR, TABLE eller ROW. Du kan f.eks. bruge enten SQL-tabelfunktioner med styringslogik i datavarehuscentret eller SQL-skalarfunktioner til at overføre andre databasesystemer til DB2.
Version 7.2 indeholder følgende kontrolsætninger i triggere og SQL-funktioner:
Kontrolsætningerne er integreret i DB2-forespørgselscompileren. Der er flere oplysninger om SQL-kontrolsætninger og variabler i SQL Reference. Der er flere oplysninger om forbedringerne i Version 7.2 i DB2 Release Notes.
Du kan nu bruge betingelser og triggere på referenceintegritet sammen med TYPE-tabeller.