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

Home -> Community -> Usenet -> c.d.o.misc -> Re: Function bases index / conatrint - confused

Re: Function bases index / conatrint - confused

From: Mark D Powell <Mark.Powell_at_eds.com>
Date: 10 Nov 2006 06:45:04 -0800
Message-ID: <1163169904.409129.81090@k70g2000cwa.googlegroups.com>

On Nov 10, 7:01 am, "Martin T." <bilbothebagginsb..._at_freenet.de> wrote:
> Hi all.
> (Oracle 9i2)
>
> I have a name column that up to now had a unique index+constraint to
> prevent the same names.
> I wanted to change this, so that the names get compared
> case-insensitive.
>
> I can use a function base index to achive this:
> CREATE UNIQUE INDEX MYTABLE_C1 ON MYTABLE
> (LOWER(NAME));
>
> However, prior to now I had the following:
> CREATE UNIQUE INDEX MYTABLE_C1 ON MYTABLE
> (NAME);
> ALTER TABLE MYTABLE ADD (
> CONSTRAINT MYTABLE_C1 UNIQUE(NAME)
> USING INDEX);
>
> But I cannot create a constraint on lower(..)
> I have found quite a few examples on the net which explain to use a
> function based index to enforce similar constraints.
>
> So what problems can arise if I set only a fbi and not also the
> explicit constraint?
>
> thanks for any pointers.
>
> best regards,
> Martin

Since in version 9.2 the FBI will provide the functionality you want I do not see any problem other than because you do not have a constraint defined other than you will not be able to see the "constraint" by querying DBA_CONSTRAINTS.

HTH -- Mark D Powell -- Received on Fri Nov 10 2006 - 08:45:04 CST

Original text of this message

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