output format of the index

Hi dev

I am currently using below version
BANNER                                                                         
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production           
PL/SQL Release 11.2.0.1.0 - Production                                           
CORE     11.2.0.1.0     Production                                                         
TNS for 32-bit Windows: Version 11.2.0.1.0 - Production                          
NLSRTL Version 11.2.0.1.0 - Production                                           
{CODE}


here is my query to find out the list of indexes and positions in a single schema.
SELECT
USER_INDEXES. TABLE_NAME | CHR (9) |
USER_INDEXES. INDEX_NAME | CHR (9) |
TRIM (user_ind_columns. COLUMN_NAME) | CHR (9) |
user_ind_columns.Column_Position | CHR (9) |
trim (user_ind_columns. DOWN) ORDERTYPE
From user_indexes, user_ind_columns
WHERE user_indexes. Table_name = user_ind_columns. TABLE-NAME
AND user_indexes. Index_name = user_ind_columns. INDEX_NAME
AND user_indexes.index_name NOT IN (select index_name FROM user_constraints where index_name is not null);
The output is like :
Table_name column_name position OrderType index_name
----------------- ------------------ ------------------- ----------- ---------------
ACS_TEST ACS_TEST_IDX COL2 CSA 2
ACS_TEST ACS_TEST_IDX COL1 1 CSA
C_COLLEGE INX_COLL DEPT_ID 4 CSA
C_COLLEG LAST_NAME INX_COLL 3 ASC
C_COLLEGE INX_COLL FIRST_NAME 2 CSA
C_COLLEGE INX_COLL STUDENT_ID 1 CSA
 i am trying to spool the output to .txt file. in textfile the output should be in below format :
Table_name Index_name column_names
---------------- ---------------- ------------------
ACS_TEST ACS_TEST_IDX COL1, COL2
C_COLLEGE INX_COLL STUDENT_ID, FIRST_NAME, LAST_NAME, DEPT_ID
Note : Based on the position value the column name have to be  placed.


Please help me to get such ouput format.


Thanks,                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        

Hello

Please edit and reformat your message it's horrible.

A way to get what you need using the LISTAGG:

SELECT ui.table_name
     , ui.index_name
     , LISTAGG (uic.column_name, ',')
          WITHIN GROUP (ORDER BY uic.column_position) cols
  FROM user_indexes ui, user_ind_columns uic
 WHERE     ui.table_name = uic.table_name
       AND ui.index_name = uic.index_name
       AND NOT EXISTS
              (SELECT 1
                 FROM user_constraints
                WHERE index_name = ui.index_name)
 GROUP BY ui.table_name, ui.index_name;

Kind regards.
Al

Tags: Database

Similar Questions

  • Excel output format in the xml editor question field

    Hi all

    I have a problem with the release of excel as below.

    I developed a report to xml editor having exit excel, I designed the layout to the rtf model.

    one of the parameters in the report as 11000048,11000050

    so when I check the output excel the above setting is displayed as below.

    1,100,004,811,000,050

    But I need the parameter will be displayed in the format 11000048,11000050 , as written, please help me.

    Thank you

    Please try this

  • Simultaneous report runs very slowly when the output format is 'XML' on IBM 6.1

    We have recently updated one of our test server database IBM AIX 5.3 to 6.1 operating system. We are witnessing a strange question in the execution time-out of simultaneous reports that have output in XML format (no server of publication and the Publisher). Whenever the output format is set to XML, the execution time seem to have increased very high than it used to be less than 5.3. A report to take 10 seconds which takes about 4 minutes to complete which is huge in comparison. Information about the version as below

    Oracle EBS 11.5.10

    Oracle 10.2.0.4.0 DB

    IBM AIX 6.1 OPERATING SYSTEM

    Oracle reports 6.0.8.28.0 (I know old enough)

    Provide expert advice.

    Thank you!

    All the

    We have solved the problem. I would like to share for the benefit of the readers of the community, if they are facing similar problems.

    The reason for the slowness of the report was due to lack of installation of the 'VIEW' option that is used when XML reports. Reports whose outputs are in format PDF, XML, HTML etc, Post Script, they all need a virtual display makes setup and configuration properties of config pointing to this server whenever settings are do. It could be a windows machine with X-Server running on it for display purposes or it could be services that are running on the same server for Unix/Linux applications where the application runs. We have installed VNC as X-Server that hosts services for virual (X) output for display on UNIX itself and have configured it in the reports configuration file. It seems to have solved the problem and the reports are run as expected (must faster!)

    Thank you

    Girish

  • Show deprecated Formats in the output Module settings do not appear in my output option!

    Hello I am new using Adobe after effects CC 2014 and all guilds help I look for After Effects say replace your video output such as h.264 (MP4) on did I need to click on the checkbox called "Show obsolete Formats in the output Module Settings", BUT go does not appear on my options area. Only three options are in this section but nothing that calls it. Can anyone help me please with this problem?

    See this for an explanation of this change and for the workflow to recommend:

    using Adobe Media Encoder to create videos WMV, H.264 and MPEG-2 for After Effects

  • Joint "workflow" format in the Adobe CS5 Suite for 2 k output

    I have also several formats of footages REDS in 2 k, 4 k, set to share files DPX 2.35 anamorphic format and DSLR footages.

    We would like to complete post-production in the Adobe CS5 Suite. Change in first, Compositing & rank in Aftereffects with color finesse.

    Our final production would be in 2 k DPX Master sequence @ square pixel aspect ratio - 2048 X 872

    My doubts are as follows:
    (1.) while working, we would need to PAN and Zoom in RED 4 k files. What is a good practice to do in cs5 first?
    (2.) what are the setting of the recommended draft and interpret the images settings?
    (3.) I plan to import all the footages as it should the first and assume like 24 fps using the parameters to Interpret images. Is that it is a good practice to do in cs5 first.
    4.) since my output will be 2 k, is that what I can change RED 2 k settings to 2048 X 872 @ 24 fps @ square pixels format and continue to change?

    I've been through this article
    DAVTech Table - editing with RED 1.7 technical presentation. It deals only with RED.

    Concerning
    Siva

    I do several framesize and format all the time of editing in Premiere Pro...  It's one of the things I like the most on the body.

    You have a few options...

    I would like to make a sequence setting personalized with your image size and frame rate objective.  It is a sequence of "desktop".  you will have simply evolve your material as you see fit.  Your RED can be shrunk to fit the frame, or pan and scan or a bit of both?

    You can actually run the shade of color in the body if you have couple of the system.  I might suggest to take a look at Magic Bullet Colorista 2, it's a tool for color correction at the same level as the rest of the range of products of MB... all very good.

    If you have decided to go this route, you will get the best color fidelity in the sequence settings and by ticking the 'binary maximum depth' that tends to do everything which is not limited to 8-bit (like your DSLR footage), as your RED and DPX files (I suppose in all cases), 32-bit float to preserve its color accuracy and color correct far.

    HOWEVER, I myself would get a breathing fire Monster of a workstation to run this logical cores of way-8 hearts physical/16 MINIMUM with 16 GB of RAM with a card Quadro with a DisplayPort output out 10 bits for the ranking and then get a 10-bit display.

    I think that with a computer system right, you'd be surprised to know how well Agency will accomplish this... and no it won't be cheap, but for any other route of NLE workflow, you'll be transcoding all... In the 1990s, I had 50 000.00/pc into Media 100 work stations with all exclusive components, etc... make everything...

    If you have spent between 7 and 10 000.00 on a workstation for CS5, you would have a system that online publishers could not be photographed in their wildest dreams 5-7 years.

  • Incorporation of the Index of full text in PDF format

    Hi all

    I tried to create and integrate indexes full text in PDF format, but without success. I followed the steps described in the http://help.adobe.com/en_US/Acrobat/9.0/Standard/WSC28D4DBB-6A78-4027-9E04-F50FE411CFB9.w. html - it can have seen progress in the collection of data and in the end, the index update button is enabled. It's a signal for me that the Index was created. After clicking the Ok button, save the document as a new and then reopening "created new" document, there is info that no Index is anchored in the dialog Manage the indexes incorporated . Need to do any other step? Or is it bug? Adobe Acrobat Pro 9.1 on Windows Vista 32-bit is used.

    Jan

    PS: Interesting is also comment at the bottom of above mentioned help page...

    From what I've read, the index is built and what remains is that saved the file. If you save again, there apparently cancels the job. Why? I have no idea.

  • Error in the REST Web Service with the text output Format

    Hi all

    I am referencing a REST web service and can successfully connect to it and retrieve the results with the output XML value Format.

    I don't need the node values, I want to just grab the entire XML string and fill a table with her column.

    When I create a new Rest web service reference, including the text output Format value and then create a form/report to run it, I get the following error when I click on "send":

    ORA-06550: line 1, column 63: PLS-00103: encountered the symbol "end-of-file" when expects it one of the following numbers: (- + new case mod not null to other current County avg exists max min prior sql stddev sum variance execute forall time timestamp interval date fusion pipe)
    Error sending request.

    There is control in the XML characters, but surely, this is handled by the Apex, so I'm not sure what the problem is here.

    Any ideas most welcome.

    Thank you
    Rhodri

    Rhodri:

    Request Express waiting for answer text actually be answer text, delimited by other characters that denotes a new value and a new Recordset. You should leave the response as XML. The XML document will be stored in the column xmltype01 in the collection that you specify. You can then convert this column xmltype01 in a clob, if you like using the. toClobVal().

    Kind regards

    Jason

  • Optimization of the index output

    I have a database running on 11.1.0.7 on Linux 64-bit computer. I want to know the effect of making an optimization of the index through these 2 queries.
    This will help improve performance if the fragmentation is more than 20%? Any help would be really appreciated!

    Start
    ctx_output.start_log ('opt_rebuild_TEXT2');
    ctx_output.add_event (ctx_output.event_opt_print_token);
    ctx_ddl.optimize_index (idx_name = > 'TEXT2', optlevel = > 'REBUILD');
    ctx_output.end_log;
    end;
    /

    Start
    ctx_output.start_log ('opt_rebuild_TEXT1');
    ctx_output.add_event (ctx_output.event_opt_print_token);
    ctx_ddl.optimize_index (idx_name = > 'Text1', optlevel = > 'REBUILD');
    ctx_output.end_log;
    end;
    /

    Thanks in advance.

    Hello

    as indicated in the manual for this procedure: "optimize an index deletes old data and minimize index fragmentation, which can improve query response time. So yes it can improve, but if fragmentation is about the words that you never use, so he's not going to help, if the fragmentation is on words you use frequently, then it will definitely help. It compact index, so that it can more quickly find the corresponding lines.

    You can always test it yourself of course. Test a query, wait a fragmentation of 20%, again test the query, optimize and test again. If the last query time is better than the 2nd, you know it helps.

    Herald tiomela
    http://htendam.WordPress.com

  • Rearrange the output format?

    This is probably an easy question... Below is an example of the query, that I am running. It generates output in a standard grid similar to this:

    name | week_start_date | Replied
    Jim | January 1, 2010 | 4
    Bob | January 5, 2010 | 7
    Bob | January 9, 2010 | 9
    etc etc.

    My question: How can I reconfigure the query inside, what it output shows where the 'name' and each individual "week_start_dates" are the column headers and the counties have "responded" are tiled horizontally instead of vertically? Who is?

    SELECT
    b.Name,
    c.week_start_date,
    SUM (CASE WHEN SUPERIOR (a.result) = END ELSE 0 "RESPONDED", 1) like "responded."

    Of
    Table1 an INNER JOIN table2 b ON (a.id = b.id)
    INNER JOIN datetable c ON (a.year_week = c.year_week)

    WHERE
    (a.time_stamp > = sysdate-30)
    AND UPPER (a.result) = "RESPONDED"

    GROUP BY
    c.week_start_date, b.name

    Published by: user8825851 on June 9, 2011 08:09

    Published by: user8825851 on June 9, 2011 08:10

    Hello

    From 11 g, you can use the PIVOT to do.
    http://download.Oracle.com/docs/CD/E11882_01/server.112/e16579/analysis.htm#DWHSG0209

    Kind regards
    Sylvie

  • Section 1 after the index in the output printed in ROBOHELP 8

    Hello

    In ROBOHELP 8 times printing is complete (standard order, title, table of contents, index of chapters, glossery) it appears a heading 1 empty line after the index.

    This isn't a problem with the standard model, but if a style is used where the headers are numbered and highlighted by different coloiurs the loooks line odd. The number is also included in the table of contents as an empty entry.

    Is it possible to stop this line of the topic being created?

    Concerning

    Dave White

    If you don't find an answer, please post a link here.

    See www.grainge.org for creating tips and RoboHelp

    @petergrainge

  • Formatting of 'see' or 'see also' in the index

    Using FM 8.0p277 on Windows XP (required by the customer).

    The Chicago Manual of Style italic clamoring for the words 'See' or 'See also' in the index. For example, an index entry can be "Puppy. See Dog. "I can not find how to make these words in italics in the index entries. Is this possible?

    Thank you very much

    -Gloria Mc

    You have entered the character for the italics tag in your marker?

    See: http://help.adobe.com/en_US/FrameMaker/8.0/Chap12-TOC-Indexes_22.html

  • Query is not using the index. (Included execution plan. TKPROF output not available)

    Hi all

    Version of DB: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod

    Here is the description of the problem:
    (The statistics are up to date for all tables).

    The query below does not use the index on ACCOUNTS_LIVE (ID). (Unique index)
    SQL> explain plan for
      2  select txn.account_number,to_number(txn.amount_lcy) txn_amt,to_date(booking_date,'YYYYMMDD') TXN_DATE,
      3        sal.latest_sal,sal.sal_date,customer_name,employer_name,
      4       decode(COMMUNICATION_TYPE_1,'MOBILE',COMMUNICATION_NO_1,
      5            decode(COMMUNICATION_TYPE_2,'MOBILE',COMMUNICATION_NO_2)) mob,
      6       txn.CURRENCY, CHEQUE_NUMBER,trans_dets,trans_reference,target,teller_id,acc.category,acc.inactive_marker,
      7            acc.posting_restrict,cus.sector,cus.industry
      8  from coreadmin.Gtxn_dtl_v1 txn,
      9                     (select account_number,round(to_number(nvl(amount_lcy,0)),2) latest_sal,TXN_DATE sal_date,rr
     10                      from
     11                        (select to_date(booking_date,'YYYYMMDD') TXN_DATE,batch_id,account_number,amount_lcy
     12                             ,row_number() over (partition by account_number
     13                                                     order by to_date(booking_date,'YYYYMMDD') desc NULLS LAST,
     14                                                     batch_id desc nulls last) rr,
     15                                     CURRENCY, CHEQUE_NUMBER,trans_dets,trans_reference
     16                             from coreadmin.Gtxn_dtl_v1
     17                             where transaction_code in ('204','938')
     18                  and to_number(amount_lcy) > 0)
     19                             where rr = 1
     20                       ) sal,accounts_live acc,customers_live cus
     21  where to_date(booking_date,'YYYYMMDD') between to_date('030109','DDMMRR') and to_date('020209','DDMMRR')
     22  and txn.account_number = sal.account_number
     23  and txn.account_number = acc.id
     24  and txn.CUSTOMER_ID = cus.CUSTOMER_number
     25  and target in ('30','31','32')
     26  /
    
    Explained.
    
    SQL> select * from table(dbms_xplan.display);
    
    PLAN_TABLE_OUTPUT                                                                                                                                     
    ------------------------------------------------------------------------------------------------------------------------------------------------------
    Plan hash value: 920245766                                                                                                                            
                                                                                                                                                          
    -----------------------------------------------------------------------------------------------------------                                           
    | Id  | Operation                        | Name           | Rows  | Bytes |TempSpc| Cost (%CPU)| Time     |                                           
    -----------------------------------------------------------------------------------------------------------                                           
    |   0 | SELECT STATEMENT                 |                |   363M|   121G|       |   223K  (4)| 00:44:47 |                                           
    |*  1 |  HASH JOIN                       |                |   363M|   121G|  6232K|   223K  (4)| 00:44:47 |                                           
    |*  2 |   VIEW                           |                | 34453 |  5820K|       |   147K  (1)| 00:29:36 |                                           
    |*  3 |    WINDOW SORT PUSHED RANK       |                | 34453 |  1480K|  4072K|   147K  (1)| 00:29:36 |                                           
    |*  4 |     FILTER                       |                |       |       |       |            |          |                                           
    |   5 |      INLIST ITERATOR             |                |       |       |       |            |          |                                           
    |*  6 |       TABLE ACCESS BY INDEX ROWID| GTXN_DTL_V1    | 34453 |  1480K|       |   147K  (1)| 00:29:31 |                                           
    |*  7 |        INDEX RANGE SCAN          | IDX_TXN5       |   707K|       |       |  1815   (2)| 00:00:22 |                                           
    |*  8 |   HASH JOIN                      |                |   598K|   106M|    20M| 63724   (1)| 00:12:45 |                                           
    |*  9 |    MAT_VIEW ACCESS FULL          | CUSTOMERS_LIVE |   227K|    17M|       |  2239   (4)| 00:00:27 |                                           
    |* 10 |    HASH JOIN                     |                |   598K|    59M|  9504K| 57157   (1)| 00:11:26 |                                           
    |  11 |     MAT_VIEW ACCESS FULL         | ACCOUNTS_LIVE  |   249K|  6577K|       |  1832   (2)| 00:00:22 |                                           
    |* 12 |     TABLE ACCESS BY INDEX ROWID  | GTXN_DTL_V1    |   597K|    43M|       | 52319   (1)| 00:10:28 |                                           
    |* 13 |      INDEX RANGE SCAN            | IDX_TXN11_V1   |  1204K|       |       |  3931   (2)| 00:00:48 |                                           
    -----------------------------------------------------------------------------------------------------------                                           
                                                                                                                                                          
    Predicate Information (identified by operation id):                                                                                                   
    ---------------------------------------------------                                                                                                   
                                                                                                                                                          
       1 - access("TXN"."ACCOUNT_NUMBER"="ACCOUNT_NUMBER")                                                                                                
       2 - filter("RR"=1)                                                                                                                                 
       3 - filter(ROW_NUMBER() OVER ( PARTITION BY "ACCOUNT_NUMBER" ORDER BY                                                                              
                  TO_DATE("BOOKING_DATE",'YYYYMMDD') DESC  NULLS LAST,INTERNAL_FUNCTION("BATCH_ID") DESC  NULLS                                           
                  LAST)<=1)                                                                                                                               
       4 - filter(TO_DATE('030109','DDMMRR')<=TO_DATE('020209','DDMMRR'))                                                                                 
       6 - filter(TO_NUMBER("AMOUNT_LCY")>0)                                                                                                              
       7 - access("TRANSACTION_CODE"='204' OR "TRANSACTION_CODE"='938')                                                                                   
       8 - access("TXN"."CUSTOMER_ID"="CUS"."CUSTOMER_NUMBER")                                                                                            
       9 - filter("TARGET"='30' OR "TARGET"='31' OR "TARGET"='32')                                                                                        
      10 - access("TXN"."ACCOUNT_NUMBER"="ACC"."ID")                                                                                                      
      12 - filter("TXN"."CUSTOMER_ID" IS NOT NULL)                                                                                                        
      13 - access(TO_DATE("BOOKING_DATE",'YYYYMMDD')>=TO_DATE('030109','DDMMRR') AND                                                                      
                  TO_DATE("BOOKING_DATE",'YYYYMMDD')<=TO_DATE('020209','DDMMRR'))                                                                         
    
    38 rows selected.
    
    SQL> select index_name
      2  from dba_ind_columns
      3  where table_name = 'ACCOUNTS_LIVE'
      4  and column_name = 'ID';
    
    INDEX_NAME                                                                                                                                            
    ------------------------------                                                                                                                        
    IDX_ACCLIVE                                                                                                                                           
    Line 23 of the query uses accounts_live.id.

    11 the order ID explain plan shows that the index does not use.

    Please suggest.

    Thanks in advance,
    Jac

    What happens when you force the index by using hint and use the hash between txn and acc join?

    See you soon
    Sarma.

  • Hi, I'm trying to use Windows Live Movie Maker to create a movie. The film is in MP4 format and the program does not allow me to open to make a new film. Windows Media Player does not play either.

    You have problems with programs:
    -Windows Live Movie Maker
    -Windows Media Player

    Error messages:
    -Windows Live Movie Maker: Sorry Movie Maker cannot open this project file. The file is not compatible with Windows Live Movie Maker or damaged. Please select a different project file. (button: "Learn more".)
    -Windows Media Player: Windows Media Player cannot play the file. The player might not support the file type or does not support the codec used to compress the file.

    Recent changes to your problem:
    None

    What have you tried to solve the problem:
    Reinstall Windows Live Movie Maker

    Format of the file:
    MP4

    You have problems with programs:
    -Windows Live Movie Maker
    -Windows Media Player

    Error messages:
    -Windows Live Movie Maker: Sorry Movie Maker cannot open this project file. The file is not compatible with Windows Live Movie Maker or damaged. Please select a different project file. (button: "Learn more".)
    -Windows Media Player: Windows Media Player cannot play the file. The player might not support the file type or does not support the codec used to compress the file.

    Recent changes to your problem:
    None

    What have you tried to solve the problem:
    Reinstall Windows Live Movie Maker

    Format of the file:
    MP4

    =============================================
    The dialog box that you quoted says "Project file" in Windows Live Movie Maker
    It would be a file with an extension WLMP. Or if the file was created with
    an earlier version of Movie Maker, it can have an extension .mswmm.

    So... just to clarify... MP4 extension or WLMP or something else?

    If the files are MP4, you will need to convert them to WMV format before
    import into Movie Maker.

    There are many programs that can do conversions...
    The following freeware is an example...:

    (FWIW... it's always a good idea to create a system)
    Restore point before installing software or updates)

    Format Factory
    http://www.pcfreetime.com/
    (the file you want to download is: > FFSetup250.zip
    (FWIW... installation..., you might want to
    Uncheck all of the boxes on the last screen)

    First... after the download and installation of Format
    Factory... you can open the program and
    left click on the toolbar, the "Option" button and
    "Select an output folder to" / apply / OK.
    (this is where you find your files after they)
    are converted)

    Drag and drop your video clips on the main screen...

    Select "all to WMV" / OK...

    Click on... Beginning... in the toolbar...

    That should do it...

    For information on playback of MP4 files... the following article may be worth a visit:

    Multimedia Windows Media Player (316992)
    file formats
    http://support.Microsoft.com/kb/316992/en-us
    > scroll waaay to MPEG-4 (.mp4)

    Alternative media players:

    FWIW... it is always preferable, if you create a system restore
    point before installing any software or updates.

    With the help of the Windows Vista system restore
    http://www.howtogeek.com/HOWTO/Windows-Vista/using-Windows-Vista-system-restore/

    VLC Media Player
    http://www.videolan.org/

    Media Player Classic
    http://www.filehippo.com/download_media_player_classic/

    Apple Quicktime
    http://www.Apple.com/QuickTime/Download/

    QuickTime Alternative
    http://www.filehippo.com/download_quicktime_alternative/

    And it might be worth a try to download
    and install 'one' of the following free codec packs:

    * Proceed at your own risk *.

    Vista Codec Package
    http://fileforum.betanews.com/detail/Vista-codec-package/1159994557/1

    K - Lite Codec Pack (full)
    http://www.filehippo.com/download_klite_codec_pack/

    CCCP (combined Community Codec Pack)
    http://www.CCCP-project.NET/wiki/index.php?title=Main_Page

    Good luck...

    Volunteer - MS - MVP - Digital Media Experience J - Notice_This is not tech support_I'm volunteer - Solutions that work for me may not work for you - * proceed at your own risk *.

  • Invalidation of the index based on a function because the recompilation

    Hello

    one of our customers has two indices according to the functions that fall under the State "off" in some situations. After looking more closely at the situation, there are some things that my opinion are different from what I expected of a function-based index. Because I am unable to find anything about either on metalink (or I'm not asking the right question) I would appreciate a second opinion of you.

    To keep things simple, I gave an example to illustrate the behavior. I use Oracle 12.1.0.2, although it can also be reproduced on versions 10.2 and 11.2.

    It's my environment and three parameters that I find relevant to the discussion:

    SQL> select banner from v$version;
    
    BANNER
    ----------------------------------------------------------------------------
    
    Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
    PL/SQL Release 12.1.0.2.0 - Production
    CORE    12.1.0.2.0      Production
    TNS for Linux: Version 12.1.0.2.0 - Production
    NLSRTL Version 12.1.0.2.0 - Production
    
    SQL> show parameter remote_dependencies
    
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ----------
    remote_dependencies_mode             string      TIMESTAMP
    
    SQL> show parameter query_rewrite
    
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- -------------
    query_rewrite_enabled                string      TRUE
    query_rewrite_integrity              string      enforced
    

    Test case:

    SQL> CREATE OR REPLACE FUNCTION f1 (p_string IN VARCHAR2)
      2  RETURN VARCHAR2
      3  DETERMINISTIC
      4  IS
      5  BEGIN
      6    RETURN lower(p_string);
      7  END f1;
      8  /
    
    Function created.
    
    SQL> CREATE TABLE tmp_t1 (a_string VARCHAR2(10));
    
    Table created.
    
    SQL> INSERT INTO tmp_t1 VALUES ('a');
    
    1 row created.
    
    SQL> COMMIT;
    
    Commit complete.
    
    SQL> CREATE INDEX x1_tmp_t1 ON tmp_t1(f1(a_string));
    
    Index created.
    
    SQL> set linesize 80;
    SQL> column index_name format a10;
    SQL> SELECT index_name, index_type, status, funcidx_status
      2    FROM user_indexes;
    
    INDEX_NAME INDEX_TYPE                  STATUS   FUNCIDX_
    ---------- --------------------------- -------- --------
    X1_TMP_T1  FUNCTION-BASED NORMAL       VALID    ENABLED
    

    We have our table and our based on an index function which basically converts the values to lowercase. From here on things, download a little weird. What happens with the index based on a function if the underlying function is recompiled? I always thought (and which is also stated in the Concepts and the use of function index (Doc ID 66277.1)) that the index would change its status to "disabled". Here is an excerpt of the said Doc ID:

    The index depends on the State of the PL/SQL function. The index can be

    struck down or rendered useless by changes to the function. The index is marked

    People with DISABILITIES, if he is brought to the function or function is re-created.

    The timestamp of the function is used to validate the index.

    To allow the index after it is created, the function if the signature of the

    the function is identical to the front:

    ALTER INDEX ENABLE;

    If the signature of functions is changed, to make the changes effective

    in the index, the index must be renewed to make it valid.

    ALTER INDEX REBUILD.

    It seems that this is not the case, as the index remains valid and activate.

    SQL> alter function f1 compile;
    
    Function altered.
    
    SQL> SELECT index_name, index_type, status, funcidx_status
      2    FROM user_indexes;
    
    INDEX_NAME INDEX_TYPE                  STATUS   FUNCIDX_
    ---------- --------------------------- -------- --------
    X1_TMP_T1  FUNCTION-BASED NORMAL       VALID    ENABLED
    

    OK, explicitly recompiling function F1 single timestamp changed. What if we replace the function completely and we change the output of the function - for example we will switch from a LOWER function to SUPERIOR function in the body of the F1. Again, it is change that I thought would be not only to disable the index based on a function, but also force its reconstruction. At least that is my understanding of the explanation in Doc ID).

    SQL> CREATE OR REPLACE FUNCTION f1 (p_string IN VARCHAR2)
      2  RETURN VARCHAR2
      3  DETERMINISTIC
      4  IS
      5  BEGIN
      6    RETURN UPPER(p_string);
      7  END f1;
      8  /
    
    Function created.
    
    SQL> SELECT index_name, index_type, status, funcidx_status
      2    FROM user_indexes;
    
    INDEX_NAME INDEX_TYPE                  STATUS   FUNCIDX_
    ---------- --------------------------- -------- --------
    X1_TMP_T1  FUNCTION-BASED NORMAL       VALID    ENABLED
    
    

    Should not be. Because of the function "create or replace" F1 never go through a "invalid" phase which may be necessary for index becomes unusable? What about queries on the TMP_T1 table? Does optimizer always uses access index or not? What about the results?

    SQL> EXPLAIN PLAN SET statement_id='s1' FOR
      2  SELECT a_string, f1(a_string) as f1_a_string, f1('a') as f1_literal
      3    FROM tmp_t1
      4   WHERE f1(a_string) = 'a';
    
    Explained.
    
    SQL> SELECT * from table(dbms_xplan.display(statement_id=>'s1'));
    
    PLAN_TABLE_OUTPUT                                                                                                   
    ------------------------------------------------------------------------------------------------------------------------
    Plan hash value: 3133804460                                                                                         
                                                                                                                        
    -------------------------------------------------------------------------------------------------                   
    | Id  | Operation                           | Name      | Rows  | Bytes | Cost (%CPU)| Time     |                   
    -------------------------------------------------------------------------------------------------                   
    |   0 | SELECT STATEMENT                    |           |     1 |  2024 |     2   (0)| 00:00:01 |                   
    |   1 |  TABLE ACCESS BY INDEX ROWID BATCHED| TMP_T1    |     1 |  2024 |     2   (0)| 00:00:01 |                   
    |*  2 |   INDEX RANGE SCAN                  | X1_TMP_T1 |     1 |       |     1   (0)| 00:00:01 |                   
    -------------------------------------------------------------------------------------------------
    

    The index is used by the optimizer, see the results.

    SQL> column f1_a_string format a15;
    SQL> column f1_literal format a15;
    SQL> SELECT a_string, f1(a_string) as f1_a_string, f1('a') as f1_literal
      2    FROM tmp_t1
      3   WHERE f1(a_string) = 'a';
    
    A_STRING   F1_A_STRING     F1_LITERAL
    ---------- --------------- ---------------
    a          a               A
    

    A_STRING = value in the table

    F1_A_STRING = value of f1 (a_string) but the value is not evaluated because it comes from an index, so tiny value (remember, at the time index created the function returned small values)

    F1_LITERAL = value of the function f1 newly evaluated, using literal instead of the value in the table.

    Predicate f1 (a_string) = 'a' should return no rows because no character uppercase is equivalent to "a". Query with f1 (a_string) = 'A' should return a line, but it doesn't.

    SQL> SELECT a_string, f1(a_string) as f1_a_string, f1('a') as f1_literal
      2    FROM tmp_t1
      3   WHERE f1(a_string) = 'A';
    
    no rows selected
    

    Anyone know if this is an expected behavior? And, is it possible to disable the index based on a function whenever the underlying function signature is changed? The parameter query_rewrite_integrity = applied from

    DOC-ID 66277.1 does not seem to do the trick:

    (c) session variables

    ~~~~~~~~~~~~~~~~~~~~

    QUERY_REWRITE_ENABLED (true, false),

    QUERY_REWRITE_INTEGRITY (confidence, forced, stale_tolerated)

    determines the optimizer to use index based on a function with

    expressions using SQL, user defined functions functions.

    TRUST: Oracle allows rewrites using relationships that have

    was declared.

    APPLIED: Oracle ensures and guarantees consistency and integrity.

    STALE_TOLERATED: Oracle allows rewrites using vessels of the relationship not applied.

    Used in the case of materialized views.

    Set session variable cost function optimizer to choose the

    a function-based index

    Kind regards

    SAMO

    From the Manual 11.2 ( https://docs.oracle.com/cd/E11882_01/appdev.112/e41502/adfns_indexes.htm#ADFNS254 )

    "If you change the semantics of a DETERMINISTIC run and recompile, then you must manually rebuild all addicts depending on index and materialized views." Otherwise, they report results for the previous version of the function. »

    This note is not that I made my initial comment well - which was based on an incorrect memory the relationship between function-oriented and autonomous pl/sql functions, so I won't try to explain it. In fact, I went back to Oracle 8i practice to see if something had changed between yesterday and today and found that I had described exactly the behavior that the OP has been seeing. It's the way it is supposed to be.

    Concerning

    Jonathan Lewis

  • 2015 RoboHelp. Main project generated does not recognize subcategories in the keywords in the index.

    I have a master project containing external links to many projects (more than 70) and all the index entries are combined to create a master index for the help system. After I upgraded to RH2015 and I generated the subproject both main project, keyword/subkeyword relationships disappeared. Entry index keywords are listed without any subcatgories although the project has them. Like this:

    So now I have a giant list of keywords without the indentations to delimit groups of keywords. I did a large part of the index by hand using the properties of the section and the format "keyword\subkeyword". This delimiter has changed? Anyone know or have the same problem? Am I missing a value somewhere?

    I was by the who is new and Forums here, but don't see anything.

    Thanks in advance.

    Hello

    I tried it with the latest patch applied RoboHelp and it works very well at my end.

    Index the thin air in the WebHelp output.

    We have fixed this bug in the latest version of patch. Please make sure that you have updated the HR. Latest version after you apply the hotfix would be 12.0.1.338

    For the application of the hotfix, see help > updates and apply the available update.

    If after application of the patch also, you face this issue please post here.

    Thank you
    Manu of FIFA

Maybe you are looking for