× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



On 26-Jun-2015 11:46 -0600, rob wrote:
<<SNIP>>
When I use RUNQRY FILE(MYLIB/MYINDEX)
against that file I am getting:
QRY1045 - File MYINDEX in ROB cannot be queried.
CPD4360 - Queried file MYINDEX in ROB not data base file or is an
SQL derived key index.

As always... the *context* for the errors often matters; provide the full LOG(4 0 *SECLVL) joblog.


If I drop BOTH the WHERE clause, and the RCDFMT clause, I can then
use: RUNQRY QRYFILE(MYLIB/MYINDEX)

[https://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzajq/rzajqderivedindex.htm]
Normally when I think of a "derived index" I am thinking something
like FIELD1 CONCAT FIELD3 or (annualWage/52).
Apparently using these two clauses gets it thinking it's a derived
index.
A WHERE clause should be considered a "sparse" index and not a
"derived" index and therefore should be fat dumb and happy at 7.2.
[https://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzajq/rzajqsparseindexuse.htm]
Too bad that is not what I am seeing...


To avoid being overly /wordy/, the term "derived index" was used to describe the enhanced SQL INDEX with either [or both] of a WHERE clause and\or expressions defined other than a column-name.

AIUI the query would need to run SQE to utilize the INDEX, and the SQL does not allow a query of an INDEX, thus it would necessarily follow that the request can not be performed. The same effect would be expected [and the same context revealed for the msg CPD4306] when performing the following Open Query File (OPNQRYF) request instead of the Run Query (RUNQRY) Default Query [per QRY(*NONE)] of a file:

OPNQRYF QRYFILE(MYLIB/MYINDEX)

P.S. Interestingly, though I no not for sure, the Query/38 Design Query Application (DSNQRYAPP) might actually be able to /query/ the INDEX *if* the /optimize/ feature is turned off, because that feature can use native [keyed] I/O; the /query/ is deferred to [what eventually became known as] the Classic Query Engine (CQE) when the [default IIRC] is set to /optimize/.


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.