Re: alter table alter type CASCADE - Mailing list pgsql-general

From Peter Hunsberger
Subject Re: alter table alter type CASCADE
Date
Msg-id z2hcc159a4a1005051957k297cf579r7ebb2522f3c49bee@mail.gmail.com
Whole thread Raw
In response to Re: alter table alter type CASCADE  (Thom Brown <thombrown@gmail.com>)
List pgsql-general
On Wed, May 5, 2010 at 7:31 AM, Thom Brown <thombrown@gmail.com> wrote:
> On 5 May 2010 13:14, Chris Barnes <compuguruchrisbarnes@hotmail.com> wrote:
>>
>> It has been some years since I worked with Oracle, doesn't Oracle
>> recompile the view when the object it references changes in structure?
>> Send
>
> What does Oracle do when you've got a view like:
>
> CREATE OR REPLACE VIEW test_view AS
>  SELECT test.test_id, test.test_value, date_is_future(test.test_date) as
> upcoming
>    FROM test;
>
> Where date_is_future expects a text field, but you change the test table so
> that test_date is now varchar(20)?  The function no longer matches the
> signature.  Does it just prevent it?  And what about when conditions are
> provided in a WHERE clause which become invalid when the column type
> changes?
>

If Oracle can find a function that will make the view valid it will
continue to allow usage of the view; though it is still marked as
needing to be rebuilt from a user perspective any calls to it will
succeed if there is a possible way for the view to still be valid.  If
there is no possible way for any use of the view to succeed then the
calls fail.


--
Peter Hunsberger

pgsql-general by date:

Previous
From: "Joshua D. Drake"
Date:
Subject: Re: pg_class has 3615 rows and 1010Mb in table size
Next
From: Konstantin Izmailov
Date:
Subject: Re: Savepoint and prepared transactions