Oracle 8 question

From: Kenn <k3nn_at_optushome.com.au>
Date: Thu, 1 Nov 2001 20:02:51 +1100
Message-ID: <3be10f8b$0$30757$afc38c87_at_news.optusnet.com.au>


The following is the schema written using a version of SQL1999.

create type nameType (

firstname varchar2(20),

surname varchar2(20) );

create type guestType (

guestNo number(4),

name                  nameType,

city                     varchar(15));



create type specialOptionType (

optDesc                varchar(15),

quantity                integer );



create type dinnerType (

restaurant             varchar(15)                   //    either MACVIEW
or the MACFINE
mealType              varchar(15));                // either SEAFOOD
ALACARTE or CURRYFEAST

create type specialDealType (

bookingNo         number(4),                                    //
bookingNo is unique for each Deal
guestRef           ref(guestType),                    // the main guest
making the booking

optionList setof(specialOptionType),

typeOfDeal        varchar(20)                //SPECIAL, LUXURY, WEEKEND or
WEEKEND_LUXURY );

create type weekendDealType (

lateCheckOut char(1),

dinner                     dinnerType

) under specialDealType;

create type luxuryDealType (

luxuryExtraList (setof (varchar (15)) // eg SPA, CRUISE, PARASAIL, FACIAL
roomView varchar(15), // eg "OCEANVIEW CITYVIEW"

guestList setof( ref(guests)) // All of the other guests that are staying

) under specialDealType;

create type weekendLuxuryDealType ()

under weekendDealType, luxuryDealType;

Question is how do i create the following types in oracle 8?

nameType, guestType, specialOptionType, dinnerType

optionListNTabType, guestListNTabType, luxuryExtrasVArrayType specialDealType, weekendDealType, luxuryDealType, weekendLuxuryDealType

This is what i have done:

I think its incorrect:

CREATE TYPE nameType AS OBJECT (

  FirstName           VARCHAR2(20),
  CustName         VARCHAR2(20)

)
/

CREATE TYPE guestType AS OBJECT (
  guestNo NUMBER,
  Name nameType,
  City VARCHAR2(15))
/

CREATE TYPE specialOptionType AS OBJECT (   optDesc VARCHAR(15),
  quantity integer))
/

CREATE TYPE dinnerType AS OBJECT (
  restaurant VARCHAR(15),
  mealType VARCHAR2(15))
/

CREATE TYPE dinnerType AS OBJECT (
  restaurant VARCHAR(15),
  mealType VARCHAR2(15))
/

create or replace type optionListNTabType AS OBJECT
/

CREATE TYPE specialDealType AS OBJECT (
  bookingNo NUMBER(4),
  guestRef guestType,
  optionList specialOptionType,
  typeOfDeal VARCHAR2(20))
/

CREATE TYPE weekendDealType AS OBJECT (
  lateCheckOut CHAR(1),
  dinner dinnerType))
/

CREATE TYPE luxuryDealType AS OBJECT (
  luxuryExtraList VARCHAR(15),
  roomView VARCHAR(15),
  guestList guests))
/

Regards.

Ken. Received on Thu Nov 01 2001 - 10:02:51 CET

Original text of this message