Re: ENABLE NOVALIDATE behaviour bug
- From: "Jonathan Lewis" <jonathan@xxxxxxxxxxxxxxxxxx>
- To: <oracle-l@xxxxxxxxxxxxx>
- Date: Tue, 29 Jun 2004 23:26:24 +0100
One thought about adding a column with a default:
the table has to be locked while every row is updated,
and if the update fails, you have a massive rollback.
If this is not something you can spare the time for,
you might still want to do something like the following:
add column
add constraint disable novalidate
update the column where null in batches - committing
add the default
enable the constraint novalidate
update any columns still null
validate the constraint
Regards
Jonathan Lewis
http://www.jlcomp.demon.co.uk
http://www.jlcomp.demon.co.uk/faq/ind_faq.html
The Co-operative Oracle Users' FAQ
http://www.jlcomp.demon.co.uk/seminar.html
Optimising Oracle Seminar - schedule updated May 1st
----- Original Message -----
From: "Mark Richard" <mrichard@xxxxxxxxxxxxxxxxx>
To: <oracle-l@xxxxxxxxxxxxx>
Sent: Tuesday, June 29, 2004 11:15 PM
Subject: Re: ENABLE NOVALIDATE behaviour bug
Thanks to Tanel and Richard for explaining this. I know realise that I
misunderstood the meaning of "novalidate" - I was hoping it might mean
"trust me Oracle, I know it to be true" but it can only mean "from today
on, enforce this - who knows about the past". I should have realised that.
I'll take Tanel's advice of creating the column with a default. This is
yet another area I wasn't sure about... I wasn't positive that a default
value would be applied to existing rows since adding a default clause to a
pre-existing column doesn't do this. So I've asked one question and
received two answers - Well done and thankyou.
Regards,
Mark.
----------------------------------------------------------------
Please see the official ORACLE-L FAQ: http://www.orafaq.com
----------------------------------------------------------------
To unsubscribe send email to: oracle-l-request@xxxxxxxxxxxxx
put 'unsubscribe' in the subject line.
--
Archives are at http://www.freelists.org/archives/oracle-l/
FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html
-----------------------------------------------------------------
- Follow-Ups:
- Re: ENABLE NOVALIDATE behaviour bug
- From: Jared . Still
- References:
- Re: ENABLE NOVALIDATE behaviour bug
- From: Mark Richard
Other related posts:
- » ENABLE NOVALIDATE behaviour bug
- » Re: ENABLE NOVALIDATE behaviour bug
- » Re: ENABLE NOVALIDATE behaviour bug
- » Re: ENABLE NOVALIDATE behaviour bug
- » Re: ENABLE NOVALIDATE behaviour bug
- » Re: ENABLE NOVALIDATE behaviour bug
- » RE: ENABLE NOVALIDATE behaviour bug
- » Re: ENABLE NOVALIDATE behaviour bug
- » Re: ENABLE NOVALIDATE behaviour bug
- » Re: ENABLE NOVALIDATE behaviour bug
- » Re: ENABLE NOVALIDATE behaviour bug
- » RE: ENABLE NOVALIDATE behaviour bug
- » RE: ENABLE NOVALIDATE behaviour bug
- » Re: ENABLE NOVALIDATE behaviour bug
- Re: ENABLE NOVALIDATE behaviour bug
- From: Jared . Still
- Re: ENABLE NOVALIDATE behaviour bug
- From: Mark Richard