Re: IS and AS

From: Frank van Bortel <frank.van.bortel_at_gmail.com>
Date: Thu, 22 Jan 2009 11:13:46 +0100
Message-ID: <ec775$497846da$524b5c40$5715_at_cache6.tilbu1.nb.home.nl>


O_TEXT wrote:

> Shakespeare a écrit :
>> O_TEXT schreef:

>>> I was wondering what is the difference between IS and AS, in general
>>> PL/SQL code.
>>>
>>>
>>> For instance of FUNCTION book_t, how can oracle know if keyword ending
>>> the header is IS or AS;
>>> I mean if header returns SELF and declare result variable before BEGIN,
>>> or if header returns SELF AS RESULT and declare nothing before BEGIN.
>>>
>>>
>>> CREATE OR REPLACE TYPE BODY book_t
>>> AS
>>> CONSTRUCTOR FUNCTION book_t (id IN INTEGER,
>>> title IN VARCHAR2,
>>> isbn IN VARCHAR2,
>>> pages IN INTEGER)
>>> RETURN SELF AS RESULT
>>> IS
>>> BEGIN
>>> SELF.id := id;
>>> SELF.title := title;
>>> SELF.isbn := isbn;
>>> SELF.pages := pages;
>>> IF isbn IS NULL OR SELF.ck_digit_okay
>>> THEN
>>> RETURN;
>>> ELSE
>>> RAISE_APPLICATION_ERROR(-20000, 'ISBN ' || isbn
>>> || ' has bad check digit');
>>> END IF;
>>> END;
>>> ...
>> It's all a matter of parsing....
>>
>> Shakespeare
>>
>> BTW: in many cases, AS and IS are interchangeable.
> 
> Is it possible to know on which rule PLSQL is based for parsing?
> 
> 
> 

http://download.oracle.com/docs/cd/A91202_01/901_doc/server.901/a90125/statements_82.htm#2064465

as|is clause, meaning it is interchangeable. Works for all SQL create statements, afaik.

-- 

Regards,
Frank van Bortel
Received on Thu Jan 22 2009 - 11:13:46 CET

Original text of this message