| Oracle FAQ | Your Portal to the Oracle Knowledge Grid | |
Home -> Community -> Usenet -> c.d.o.server -> Re: Index-by table - compilation errors
Vojta wrote:
> Hello,
>
> my problem is compilation warning "Warning: TYPE created with compilation
> errors" in script:
>
> CREATE OR REPLACE TYPE StrListTyp IS TABLE OF VARCHAR(255) INDEX BY
> BINARY_INTEGER;
>
> After that my procedure, which is using the type, becomes invalid. What is
> wrong on the script?
>
> When I execute script:
>
> CREATE OR REPLACE TYPE StrListTyp IS TABLE OF VARCHAR(255);
>
> type is created without warnings but then I get error "Lower index exceeds
> counter" in procedure when I try to assign value to StrListTyp(index) .
>
>
> "DA Morgan" <damorgan_at_psoug.org> píse v diskusním príspevku
> news:1181142003.818855_at_bubbleator.drizzle.com...
>> Vojta wrote: >>> Please, can you advise? I created package in which I defined type: >>> >>> TYPE StrListTyp IS TABLE OF VARCHAR(255) INDEX BY BINARY_INTEGER; >>> >>> Package was created, it works, procedures can work with this type. Then I >>> tried to create the same type outside package by executing script: >>> >>> CREATE OR REPLACE TYPE StrListTyp IS TABLE OF VARCHAR(255) INDEX BY >>> BINARY_INTEGER; >>> >>> Type is created with warning: "Warning: TYPE created with compilation >>> errors". When I try to run procedure using this type I get error "Object >>> [procedure name] is invalid". If I run the script without "INDEX BY", >>> type is created without wornings but indexing does not work: >>> >>> CREATE OR REPLACE TYPE StrListTyp IS TABLE OF VARCHAR(255); >>> >>> CREATE PROCEDURE MyProc IS >>> strList StrListTyp := StrListTyp(); >>> BEGIN >>> strList(1) := 'ABC'; -- Here I get error "Lower index exceeds counter" >>> END; >>> >>> Please, what do I do wrong? How can I create index-by table outside >>> package? >>> >>> Thank you! Vojta >> Why? The error message you have been looking at is well written and >> quite clear on the matter. What is the business case that makes you >> want to circumvent it? >> -- >> Daniel A. Morgan >> University of Washington >> damorgan_at_x.washington.edu >> (replace x with u to respond) >> Puget Sound Oracle Users Group >> www.psoug.org
What is wrong with the script is that you are ignoring the error message or not reading it.
Read it.
Pay attention to it.
You can not do what you are trying to do.
The question I asked, that you did not answer, is what the business case is for not declaring it as is allowed? "I want to" is not a business case.
-- Daniel A. Morgan University of Washington damorgan_at_x.washington.edu (replace x with u to respond) Puget Sound Oracle Users Group www.psoug.orgReceived on Wed Jun 06 2007 - 14:26:14 CDT
![]() |
![]() |