Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Oracle8i Select Statement

Re: Oracle8i Select Statement

From: <michael_bialik_at_my-deja.com>
Date: Fri, 16 Jul 1999 14:14:47 GMT
Message-ID: <7mneoc$gc2$1@nnrp1.deja.com>


Hi,

 It looks that you have to supply WHERE clause ti your SELECT  statement :
  SELECT p.z_eigenschaft.getpreis(p.zimmernr,p.hotel_id)   FROM zimmer p
  WHERE zimmernr = 1 AND hotel_id = 1;

 Good luck. Michael.

In article <7mn6oo$865$1_at_nixe.ISAR.net>,   "news.isar.net" <agnes.sauerer_at_pentasys.de> wrote:
> Hello
>
> I have a question!!! I'm using Oracle8i, Release 8.1.5, and have a
problem
> with a select statement.
>
> What is wrong with the method "getpreis" in the TYPE "Zimmer_ty",
because
> the SELECT Statement gets the wrong data. Why does the statement
return 3
> values?
>
> 1) Create a relational table Zimmer, which embedded the Objekt
Zimmer_ty as
> a column.
> create table Zimmer
> (Zimmernr Number,
> Hotel_id Number,
> Z_Eigenschaft Zimmer_ty,
> CONSTRAINT pk_Zimmer PRIMARY KEY (Zimmernr, Hotel_id));
>
> 2)
> CREATE or replace TYPE Zimmer_ty AS OBJECT (
> Groesse real,
> Standard varchar2(20),
> Preis real,
> MEMBER FUNCTION getpreis(Zim Number, Hot Number) RETURN REAL,
> PRAGMA RESTRICT_REFERENCES (getpreis, WNDS, WNPS)
> );
> /
>
> 3)
> CREATE or replace TYPE BODY Zimmer_ty As
> Member FUNCTION getpreis(Zim Number, Hot Number) RETURN REAL As
> Preis_pro_Tag REAL;
> BEGIN
> SELECT preis INTO Preis_pro_Tag
> FROM zimmer
> WHERE (Zimmernr = Zim)
> AND (Hotel_id = Hot);
> RETURN Preis_pro_Tag;
> END getpreis;
> End;
>
> Insert into zimmer values
> (1, 1,
> Zimmer_ty('60.00', 'DB, WC, D', 60.00));
>
> Insert into zimmer values
> (2, 2,
> Zimmer_ty('40.00', 'EB, WC, D', 55.00));
>
> Insert into zimmer values
> (1, 3,
> Zimmer_ty('25.00', 'EB, WC, D', 40.00));
>
> 4) Select Statement
> SELECT p.z_eigenschaft.getpreis(1, 1) FROM zimmer p;
>
> P.Z_EIGENSCHAFT.GETPREIS(1, 1)
> -----------------------------
> 60
> 55
> 40
>
> Thank you very much in advance!
>
> Agnes Sauerer
>
>

Sent via Deja.com http://www.deja.com/
Share what you know. Learn what you don't. Received on Fri Jul 16 1999 - 09:14:47 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US