Table generated by the system type: behavior or bug WAITED?

I understand that Oracle, in the execution of a SQL statement, sometimes automatically generates objects SQL not explicitly created by the user. One such example is with table in pipeline defined functions to return a collection type of PL/SQL (as opposed to SQL): in this case, Oracle will automatically create an equivalent SQL collection type for the PL/SQL collection type. All well and good...

However, here is an example where it would appear that oracle unnecessarily creates a SQL collection type, even when there is an explicit CONVERSION to an already existing SQL collection type. The problem seems to be related to the use of the function of COLLECTION (http://docs.oracle.com/database/121/SQLRF/functions034.htm#SQLRF06304).

First the test script...

prompt    -- The database version...

select    *
from    v$version
/

prompt    -- Create the test object and collection types...

create or replace type OMyObject
is object
(
    a integer
)
/

create or replace type NMyObjectTable
is table of OMyObject
/

prompt    -- Check that no system-generated table types currently exist...

select    C.COLL_TYPE, C.ELEM_TYPE_MOD, C.ELEM_TYPE_NAME, C.TYPE_NAME, C.UPPER_BOUND
from    USER_COLL_TYPES c
where    c.TYPE_NAME like 'SYS%'
and    c.ELEM_TYPE_NAME = 'OMYOBJECT'
/

prompt    -- CAST with MULTISET does not create a system-generated table type...

select    cast(multiset(
        select    new OMyObject(level)
        from    DUAL
        connect by
            level <= 10
    ) as NMyObjectTable) myObjects
from    DUAL
/

select    C.COLL_TYPE, C.ELEM_TYPE_MOD, C.ELEM_TYPE_NAME, C.TYPE_NAME, C.UPPER_BOUND
from    USER_COLL_TYPES c
where    c.TYPE_NAME like 'SYS%'
and    c.ELEM_TYPE_NAME = 'OMYOBJECT'
/

prompt    -- COLLECT without a CAST creates a new system-generated table type...

select    collect(value(o)) myObjects
from    table(cast(multiset(
        select    new OMyObject(level)
        from    DUAL
        connect by
            level <= 10
    ) as NMyObjectTable)) o
/

select    C.COLL_TYPE, C.ELEM_TYPE_MOD, C.ELEM_TYPE_NAME, C.TYPE_NAME, C.UPPER_BOUND
from    USER_COLL_TYPES c
where    c.TYPE_NAME like 'SYS%'
and    c.ELEM_TYPE_NAME = 'OMYOBJECT'
/

prompt    -- (Drop the system-generated table type...)

set    feedback off

spool    "temp_drop_table_types.sql"

select    'drop type "' || C.TYPE_NAME || '";'    as "-- Drop statement"
from    USER_COLL_TYPES c
where    c.TYPE_NAME like 'SYS%'
and    c.ELEM_TYPE_NAME = 'OMYOBJECT'
/

spool    off

set    feedback on

@"temp_drop_table_types.sql"

prompt    -- COLLECT with a CAST also creates a system-generated table type...

select    cast(collect(value(o)) as NMyObjectTable) myObjects
from    table(cast(multiset(
        select    new OMyObject(level)
        from    DUAL
        connect by
            level <= 10
    ) as NMyObjectTable)) o
/

select    C.COLL_TYPE, C.ELEM_TYPE_MOD, C.ELEM_TYPE_NAME, C.TYPE_NAME, C.UPPER_BOUND
from    USER_COLL_TYPES c
where    c.TYPE_NAME like 'SYS%'
and    c.ELEM_TYPE_NAME = 'OMYOBJECT'
/

which outputs...

-The version of database...

BANNER                                                                               CON_ID

-------------------------------------------------------------------------------- ----------

Database Oracle 12 c Enterprise Edition Release 12.1.0.2.0 - 64 bit Production 0

PL/SQL Release 12.1.0.2.0 - Production 0

CORE 12.1.0.2.0 Production 0

AMT for 64-bit Windows: Version 12.1.0.2.0 - Production 0

NLSRTL Version 12.1.0.2.0 - Production 0

5 selected lines.

-Create the test object and collection types.

Type of creation.

Type of creation.

-Check that there is currently no type of system-generated table...

no selected line.

-Cast IRON with MULTISET does not create a table generated by the system type...

MYOBJECTS (A)

---------------------------------------------------

NMYOBJECTTABLE (OMYOBJECT (1), OMYOBJECT (2), OMYOBJECT)

(3), OMYOBJECT (4), OMYOBJECT (5), OMYOBJECT (6), OMYOBJECT

((7), OMYOBJECT (8), OMYOBJECT (9), OMYOBJECT (10))

1 selected line.

no selected line.

-At expense LEDGES without a DISTRIBUTION creates a new type of system-generated table...

MYOBJECTS (A)

---------------------------------------------------

SYSTPUBsptM + HT5OlTJUtIcUfgg is (OMYOBJECT (1), OMYOBJEC)

OMYOBJE, OMYOBJECT (4), (2) T, OMYOBJECT (5), OMYOBJECT (3)

CT (6), OMYOBJECT (7), OMYOBJECT (8), OMYOBJECT (9), OMYOBJ

ECT (10))

1 selected line.

COLL_TYPE ELEM_TYPE_MOD ELEM_TYPE_NAME TYPE_NAME UPPER_BOUND

---------- ------------- ------------------------------ ------------------------------ -----------

TABLE OMYOBJECT SYSTPUBsptM + HT5OlTJUtIcUfgg is

1 selected line.

-(Drop the type generated by the system of table...)

-Drop statement

---------------------------------------------------------------------------------------------------------------------------------------------

' Drop type' SYSTPUBsptM + HT5OlTJUtIcUfgg == ";

Type fell.

-At expense LEDGES with a CAST also creates a table generated by the system type...

MYOBJECTS (A)

---------------------------------------------------

NMYOBJECTTABLE (OMYOBJECT (1), OMYOBJECT (2), OMYOBJECT)

(3), OMYOBJECT (4), OMYOBJECT (5), OMYOBJECT (6), OMYOBJECT

((7), OMYOBJECT (8), OMYOBJECT (9), OMYOBJECT (10))

1 selected line.

COLL_TYPE ELEM_TYPE_MOD ELEM_TYPE_NAME TYPE_NAME UPPER_BOUND

---------- ------------- ------------------------------ ------------------------------ -----------

TABLE OMYOBJECT is SYSTPds/KlYeDTnaiTKLsbcLJpg

1 selected line.

This behavior is expected, or should it be considered a bug? Thoughts?

Gerard

This known issue and how Oracle offers with him (i.e. the SMON process periodically cleans transitional objects) is described in the Doc ID 1603706.1.

Gerard

Tags: Database

Similar Questions

  • Planner - fails with PCSKBD110 - tasks of the keypad of the system (type = 0, subtype = 0) is not supported.

    I am on Windows 2008 - r2 and have implemented the Task Scheduler to run my IBM personal communications. If I'm connected with my admin account, I can right click and run a task successfully or schedule a task and always connected, look at the call Scheduler it successfully. My IBM personal communications settings have a keyboard (img_jump.kmp) file that at the opening of the session I can click on the keyboard and it opens correctly. But, if I plan the task then loggoff box, scheduler of tasks will launch the cmd file, but it will fail with a: PCSKBD110 - of the keypad of the system (type = 0, subtype = 0) is not supported. This same file kmp works fine in Windows 2003. I have no idea why Windows 2008 R2 does not support this file - is there another one that I can download that works in Windows 2008?

    Mr G

    Server questions should be asked in the forum server on Technet

    http://social.technet.Microsoft.com/forums/en-us/user/forums

  • How to fill the value in the nested table by using the object type


    Hi gurus

    I created an object type and able to fill the values in it, now I want to create a nested table type of this object and fill it but looks like I'm doing something wrong, see my code below.

    Code example

    CREATE or REPLACE TYPE countries_o
    AS
    OBJECT
    (
    COUNTRY_ID TANK (2 BYTES),
    COUNTRY_NAME VARCHAR2 (40 BYTE),
    REGION_ID NUMBER);
    /

    create or replace type countries_t is table of the countries_o;

    /

    CREATE OR REPLACE

    ABC of the PROCEDURE

    IS

    v_print countries_t; -: = arr_countries_t('01','Aus',1);

    BEGIN

    v_print: = countries_t('01','A',11);

    DBMS_OUTPUT. Put_line (v_print. COUNTRY_ID | v_print. COUNTRY_NAME | v_print. REGION_ID);

    END;

    /

    Error

    • Error (6.3): PL/SQL: statement ignored
    • Error (6,12): PLS-00306: wrong number or types of arguments in the call to 'COUNTRIES_T '.
    • Error (7.3): PL/SQL: statement ignored
    • Error (7.32): PLS-00302: component 'COUNTRY_ID' must be declared

    Thanks in advance

    Concerning

    Muzz

    Hi user,

    Here is another method that you can try-

    CREATE OR REPLACE

    ABC of the PROCEDURE

    IS

    v_print countries_t: = countries_t (countries_o('01','A',11));

    BEGIN

    DBMS_OUTPUT. Put_line (v_print (1).) COUNTRY_ID | v_print (1). COUNTRY_NAME | v_print (1). REGION_ID); -you're accessinf the first element of the nested table, which in turn points to the object.

    END;

    In the sections of the declaration you have assigned values to the nested table.

    Kind regards
    Maxou

  • The names of generated by the system, not null constraints are not entered

    Hello:

    After the test, I found that the names of system generated (SYS_C #, etc.) for constraints not null are not captured and placed in the not Null Constraint field 'Name' of DM during the import of the data dictionary.

    In my view, that it is a bug. I'm doing something wrong?

    Doc

    Hi Doc,

    We do not import the names of system generated and shaped (SYS_C # are not included in the generated DDL.) Model point of view, they are forced null nut without a name.

    Philippe

  • HP: change the system type

    Hello. I have a hp laptop of 64-bit and I want to change my bit.is 32 it every way possible I could do it.please help me. and I was wondering if I could install windows 7 on hp notebook with windows media center.if 8.1 I could install, can u give me a name, Setup that works well on the computer hp laptop

    Hi @Amro12,.

    Thank you for visiting the Forums HP's Support and welcome. I looked in your question about your HP laptop and your interest to change the operating system to Windows 7 32 bit. You will need to borrow a copy of 32-bit Windows 7, they're all the same.

    Here is a link that you can order the disks if necessary.

    Just so you know there are no drivers available for Windows 7 for this machine and would rely on the Windows drivers only. What this means for you, some features are not available for Windows 7.

    Here is a link to Microsofton your downgrade rights.

    Hope this helps you.

    Thank you.

  • KB967102:stop 0x000000FE error when resumed the system of sleep__

    Received the above error code and it asks me to download a fix on the page there are 3 different options don't know which one to choose, these are the options

    Windows Vista x 86 SP3 difficulty 291684

    "           "    x64    "      "        "

    "            "    1a64  "      "        "

    Any help is very appreciated very computer savvy

    • You have problems with programs
    • Error messages
    • Recent changes to your computer
    • What you have already tried to solve the problem

    0xfe Stop error message is BUGCODE_USB_DRIVER - "This indicates that an error occurred in a Bus driver universal series (USB).".

    If a fix is available, you would install an appropriate for your operating system.  You are running a 32-bit (x 86) version of Vista or a 64-bit version (x 64)? If you are unsure, click the beginning round, type winver, and press ENTER.  Otherwise, you have a folder "c:\program files (x 86)" and a "'c:\program files" file? "  Or you just file 'c:\program files'?  (If you have both, you sure good enough to run the x 64 version.)

    If the fix does not help...

    Update the drivers for any USB devices help you, or disconnect all the USB devices on the system.  Then selectively add devices in the system and try to reproduce the problem - try to identify the aircraft involved in the accident.

    General to deal with the bluescreens indications:

    Consider running chkdsk on all partitions.  Leave complete chkdsk on each partition and see if that helps.

    It may be useful to use the driver verifier.  To activate the... Driver Verifier start-> verifier.exe-> OK-> create standard settings-> next-> driver select the names to a list-> next-> sort by provider-> select all other Microsoft drivers-> finish and OK your way out of the dialog box.

    Then restart and use the system as you normally and wait for a problem.  In case the system does not completely start after activation of the Verifier, boot mode safe and run driver verifier and tell him to remove the changes.

    Wait for a bugcheck occurs after you have enabled the auditor as described, and then download the dump on your SkyDrive and provide a link.

    Also consider running SFC/scannow.

    If you start in safe mode, do you still feel bugs? What if you do a clean boot, or boot device?

    Consider the memory with memtest86 or Windows Memory Diagnostic test. Note that memory that pass the tests isn't necessarily good memory - he not only failed a review.  Examine systematically to eliminate the system RAM - run with a few modules for awhile and see how things are going. Then try the other modules.

    Other common suggestions include ensuring drivers are up to date, but also to ensure that you use the latest version of the BIOS.

  • change the data type of a column

    Since the previous post: how to change the data type of column number to varchar2 in oracle10g

    Measures may be:
    create table TestTable (ColA varchar2 (5));
    Insert into TestTable values('12345');

    ALTER table TestTable Add (ColATemp number (5));
    setting a day of TestTable set ColATemp = ColA;

    ALTER table TestTable remove column ColA;
    change the column in table TestTable rename ColATemp CLC;

    My question is:
    If the table half million records

    setting a day of TestTable set ColATemp = ColA;

    will it be a good solution? Any performance issues? There is no index on this column.

    Sort while you do DDL, you will not be able to do any operation on the table. You the best suites you. It's a time operation, you can change the table to change the data type, but it may not work if some of the data in the table confirms no new data type of column.

    Concerning

  • Hello Mr President! I have a few questions about the Word report generation please.1.How can I add a border to a page in word? 2. How can I add gridlines to a table generated related word?. Can 3. how I add a border to a picture of the Word report?. Thank

    Hello!

    Sir, I have a few questions about generating word reports using (C language in labwindows) please.

    1. How can I add a border to a page in word?

    2. How do I add border lines and grid to a table generated in Word report (not "cvi control table"inserted from gui, I wonder about the table generated in Word report)?

    3. How can I fill a table cell of report word with the data type other than 'character '.

    And sir a question on the use of the timer in labwindows cvi please.

    Sir, I'm trying to set a time minimum interval timer to 1millisecond (0.001 s), that I have set, timer cares about the interval set by me he only meets the minimum default time interval which is, I think as 10milliseconds (I'm using windows xp service Pack 3 version 2002).

    Concerning

    Imran

    Pakistan

    Have you read this statement ? It explains how to set the registry value:

    If the REG_SZ useDefaultTimer does not already exist, you must create it under HKEY_LOCAL_MACHINE\SOFTWARE\National Instruments\CVI Run-Time Engine\cvirte. "" This can be done navigate to the appropriate folder, and then click Edit "New" string value. Then, click on means the name of the new value created, select Rename, and then specify useDefaultTimer as the name. Finally, double click on the name and specify the value True or False.

  • Oracle: deletion of tables in the diagram of the SYSTEM

    I executed by mistake full structure of database creation script with the user of the SYSTEM.
    Script has completed its work without any failure, then I fancy tables, indexes, sequences, views and some stored under the scheme of the SYSTEM procedures. All creation and change operations have been committed by the script.

    Is there a solution to distinguish these objects created from original SYSTEM schema objects? I would all drop them and come back to my original SYSTEM diagram. I don't want to see anything except original objects belonging to SYSTEM.

    any comments please

    Generate a Table DROP script and check it.

  • What would be the best type of table/chart to use?

    I'm testing a grid tie inverter. To the side of the grid, I need to provide a table/chart, which has:

    X axis: fixed, from 00:00 (midnight) and ending at 23:59

    Y axis: last watts measurment purchase / sale

    The table/graph must be emptied at midnight every night

    Measurements are performed at intervals of 10 seconds.

    This program will be running continuously for long periods of time (months in a row)

    I'm leaning towards a xy chart because the program can be started and stopped at any time and it's the only way I can think of to make sure that the line of measurnents correctly on the X axis.

    But I'm afraid that, since all XY graph is held in RAM (each line has its own displacement register) and measurment taken at intervals of 10 seconds.

    Who's going to add up quickly as the days go by finally out of memory and crash.

    Also I can not know how to delete the chart every day to avoid said memory leak.

    To make matters worse I need also a same table/chart for the release of load, batteries and solar panels.

    Here is my grid purchase sub - vi that I call after each action is taken and a message of State output and graphics for the main program.

    RavensFan wrote:

    I would follow the advice of Lynn and manage each day of data as a separate table of data.  So do not grow a value of several days of data in a single table.  Move to another storage such as file system and clear the table and start again at midnight.

    But I think what they XY graph is the best display for all the reasons you listed as discontinuous data.

    Yes I'm still with the XY graph as we are still in the first part of the development lifecycle and it is possible that the device could be stopped and started several times during the day and I don't want the graphics to get all out of whack.

    But looking at my sub - vi, it occurred to me to treat it as an engine of the action or functional global and put an initialization state it I can call at midnight to clear the shift registers.

    For what is to come back a day or more, maybe it's something that I have work later. Daily data are saved locally in a separate file and using the XLR8 tool I'll roll seven daily files in a weekly Excel workbook for later analysis.

  • Table of references to the different types of performance issue

    Hi all

    See the attached code. I use a reminder VI and must pass a few references via the user's settings. I use a table.

    This is to avoid the constraint (should I care?), I type cast to more of a generic class, then in the callback function, go to a more specific class. (What is the best way to do it?)

    As you can see, even if, for some reason, almost all the nodes property are reading as variants, forcing me to use data Variant, which seems inefficient. Why is this the case? If I type cast to a Boolean, the value should be a bool... Why force me to use for the data range?

    Is there a better way to do this? Thanks for the comments.

    If you use a cluster of istead of a table, you can maintain the rigour of the reference.

    The reason why you have found variants is that you don't are not cast the ref to the same type. Try...

    Hand, create a strict constant of the wire Ref. Make slide a constant in the call back VI and use it when you launch as more specific. Property nodes you adapt to the specific data type they have in hand.

    Note:

    You can also create references of the appropriate type by dragging the appropriate type of control in the Ref control and it will fit.

    I hope that makes sense.

    Ben

  • NI LabVIEW driver for the SRS DS345 function generator generates error "(Hex 0xBFFF0011) insufficient location information or the device or resource is not present in the system."

    Hello

    We have a generator function SRS DS345.

    I just downloaded the driver NOR for the instrument on http://sine.ni.com/apps/utf8/niid_web_display.download_page?p_id_guid=E3B19B3E9149659CE034080020E748....

    After installation, the DS345 appears in MAX, and I can well communicate with him.

    However, if I run the srds345 to Started.vi, I get an error "location information insufficient (Hex 0xBFFF0011) or the device or resource is not present in the system" from initialize it with Options.vi srds345 sub - vi.

    The only change I did Exchange address GPIB 14 to 19, which is our function generator GPIB address. In addition, the

    Functions of SRS DS345 generator of function palette is empty, even after you restart LabVIEW (see attachment). I'm using LabVIEW 8.5.1.

    Your help in resolving this issue is appreciated. Thank you.

    Best regards

    Peter

    Have you installed the driver from LabVIEW or copied directly from inst.lib?

    The first is easier, and you don't have to restart LV more...

    Error in a not filled gpib address points. I have not checked if this driver has a resource name visa or a string of gpib address old but in the first case, try the little triangle on the right at the slect address instead of by hand.

  • Locking XP! error "the system could not log. Make sure your username and domain are correct, then type your password again.

    Original title: Locking XP!

    I tried to read all the relevant messages and walked the Earth for this solution, if someone could help me I would be grateful.

    A dear friend died and I got his PC - a fast XP with SP3 which (elderly) she only used for web & email. His account has been "Judi".

    I noticed a while back that, on the logon screen, that there is another user called 'Fiona' (she told me an old co-worker who probably stayed with her).

    Now a friend in need of a very old HP PC Lions not having completely fortunately I managed to copy his files before he was insane - I offered this newer PC it after that I have "set up" for him.

    I put a new account in place on this new PC "Ken" has been added. Then, after the deletion of accounts Judi & Fiona, I cleaned the machine with MalwareBytes, CCleaner & defrag.  All is well now with only Ken appearing on the screen logon (with an image of the appropriate icon), that I used several times in the implementation of his e-mail account and move its acrossetc files. His password is empty.

    Being the only user now Ken, I thought that it strange would its user (only) one click each time to the 'Log in', so I searched and found a box that said something to the effect «... do not show a picture of connection...» » .  That started my problem!  Removing his login "icon" brings ONLY the following - FIONA!

    When connecting a Logon Message now says "the system could not log. Make sure your username and domain are correct, then type your password again.  Letters in passwords must be typed using the proper case" the choice for this error message is 'OK', which takes you to a login screen 'Type Win98' older Classic looking (no icon user) who was behind this logon Message, with (name) Fiona appears on the login screen (former) (full name and empty below the password) , with the choice to enter the password or a stop!

    Of course the password cannot be guessed (Yes - tried blank, admin, etc.) so the only choice is to stop.

    VA F8 at startup for 'Safe mode' goes to screen black WITH Fiona login screen as usual safe mode above and booting with the CD using NTPASSWD shows the usual 1) Administrator 2) 3) invited Ken and 4) Support Microsoft - NO FIONA is shown - and I put all these passwords to 'empty '. Of course repair and recovery repair 'R' does nothing on the removal of Fiona

    This translates the original message & Fiona connection again.  How can I return to screen "image icon" connection without losing files and mail Ken Ken. Where Fiona could hide when it is not a USER of the NET?

    Yet once again, I'd appreciate any help. Brian.

    You should be able to just select (click on) "Fiona", press the delete key, and then type any desired account name.  It doesn't work?

    If you cannot type on "Fiona" in the logon window, you can use the following procedure to modify the Windows registry... or you can take the computer to an independent repairer and ask them to fix it for you.  Don't go to a chain of stores, as a "geek squad" or BigBoxStoreUSA type of place.

    Go here--> https://www.raymond.cc/blog/how-to-edit-windows-registry-key-values-without-booting-in-windows/

    Choose method 1 or method 2.  I'm familiar with Hiren (method 2), but not with the program described in method 1 (even though it seems simple).  Any ISO file you choose, I suggest to download and use ImgBurn (free) to create your CD bootable from the downloaded ISO file.

    The registry key to change is in the same place as "userinit" (which is the example used in the article), so to follow 1-5 step method or method 2 for step 7.

    You will be at HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon

    In the right pane of the registry editor, you will see a large list of items.  Scroll down the page until you see LogonType and double-click it.

    In the "Value data" box, type 1, and click OK (1 is the same either hexadecimal or decimal).

    Close the registry editor, take the CD from the drive and reboot.  You should see the Welcome screen when Windows restarts.

  • How to convert an array into a cluster of the same type as the one used to build the table previously?

    I have a group of 6 items I need to change in a table for the part of the VI process.  What I can do, but then I need to change in a cluster of the same type to be used elsewhere.  When I change the table in a cluster, I find myself with a cluster of 9 elements, which of course is not compatible!

    I am attaching snapshots of context-sensitive help in the initial cluster, the intermediate table and the final cluster (bad).  Regarding the photos, the length of the 1 d tables and values in their midst are the only subject to change things.

    Please could someone help by suggesting ways to work around this problem.  Thank you

    Please do not post bitmaps by chaning simply .jpg file name extension. Do not change the file type. There is a good reason why the forums software does not bitmaps, and this is because the file sizes are huge.

    To your question: right click on the table of the Cluster service and select 'Size of Cluster' in the context menu to set the size of the cluster of output.

  • Kensington Trackballworks sometimes has several icons in the tray system, exposed behavior, it is as if one or more mouse buttons are kept pressed when they are in fact not to be affected

    Original title: Kensington Trackballworks sometimes has several icons in the system tray

    Every so often from the start (no apparent reason) multiple Kensington TrackallWorks icons appear in the system tray and the unit behaves erratically until all but one of them are closed. Behavior exhibited, it is as if one or more mouse buttons are kept pressed when they are in fact not to be affected. I use a Kensington Expert Mouse and TrackballWorks 1.04 K64325 model number. Uninstall and reinstall the driver didn't help, or does uninstalling and reinstalling Windows.

    I checked with MSCONFIG, Autoruns and even when several copies work they show only one entry for the application. Any ideas /.

    Hello
     
    Since you've already tried to uninstall and reinstall the driver/windows, this could be a hardware problem. Please try to contact the manufacturer of the mouse for assistance on this issue.

    http://us.Kensington.com/HTML/1458.html (you can select the Technical Support of this link and then select Product Knowledge Base)
    http://us.Kensington.com/HTML/1445.html

Maybe you are looking for