ORA-06504: PL/SQL: return variables of the game results or the query types do not match

Hello!

I have a simple object type and a proecdure in which I am trying to use it to insert into another table

-object

CREATE ORREPLACETYPEmt_mtg ASOBJECT

(

ACOL NUMBER ,

BCOL NVARCHAR2 (100)

);

CREATE ORREPLACETYPEREF_MTG ASTABLEOFMt_MTG ;

-same structure as the use of sampletbl target table in the cursor query

create table tbl_MT_MTG

(

ACOL NUMBER ,

BCOL NVARCHAR2 (100)

);

-procedure

CREATE ORREPLACEINTERIORTEST_PROCEDURE1

AS

ref_cur sys_refcursor ;

REFR ref_mtg ;

BEGIN

OPEN ref_cur FOR

Select acol,

BCOL

DE sampletbl rownum<10;

Fetch ref_cur in bulk collectintorefr;

Insert intotbl_MT_MTG(acol,bcol)selectacol,bcol fromtable(refr);

commit;

CLOSE Ref_cur;

END;

/

When I run this procedure fails with

ORA-06504: PL/SQL: return variables of the game results or the query types do not match

ORA-06512: at "TEST_PROCEDURE1", line 10

ORA-06512: at line 2

Any help on this please...

Thanks to an OLD POST below

so perfect helped me! Thank you

Tubby

After 5 years of more :-)

How to store refcursor in collection How to store refcursor in collection

Tags: Database

Similar Questions

  • SYS_REFCURSOR: Variables of the game results or the query return types do not match

    Hello
    I have 2 snippets below, it codes marked 'Test 1' does not work, it gives the error message, see the code below. Why it gives an error? The second code succeeds and works according to the needs.

    Test1 in brief:
    Call proc P3
    Proc calls P3 P1

    Test 2 in brief:
    Call func P2,
    Proc calls P2 P1.

    ---


    1. test 1, it breaks down:
    create or replace procedure P1 ( i_name IN VARCHAR2, 
       o_cur          out   SYS_REFCURSOR )
    is
       v_cur          SYS_REFCURSOR;   
    begin
       open o_cur for
          select i_name from dual;
    end P1;
    /
    
    create or replace function P2 ( i_name IN VARCHAR2
    ) 
    return SYS_REFCURSOR
    is
       v_cur          SYS_REFCURSOR;   
    begin
       p1( i_name, v_cur); 
       return v_cur;
    end P2;
    /
    
    create or replace procedure P3 ( i_name IN VARCHAR2, 
       o_cur          out   SYS_REFCURSOR )
    is
       v_cur          SYS_REFCURSOR;   
    begin
       p1( i_name, o_cur);      
    end P3;
    /
    
    
    declare
       v_name         varchar2(100) := 'test1';
       v_cur          SYS_REFCURSOR;      
       v_fetch_var    varchar2(100);
    begin
       P3(v_name, v_cur);
       --v_cur := P2(v_name);
       
       if v_cur%ISOPEN then
          dbms_output.put_line('v_cur%ISOPEN=true');
       else
          dbms_output.put_line('v_cur%ISOPEN=false');
       end if;
       --
       loop
          fetch v_cur into v_fetch_var;
             exit when v_cur%notfound;
             dbms_output.put_line('v_fetch_var='||v_fetch_var);
       end loop;
    end;
    /*
    Output:
    v_cur%ISOPEN=true
    ORA-06504: PL/SQL: Return types of Result Set variables or query do not match
    ORA-06512: at line 16
    */
    2. test cycle 2, he succeeds:
    create or replace procedure P1 ( i_name IN VARCHAR2, 
       o_cur          out   SYS_REFCURSOR )
    is
       v_cur          SYS_REFCURSOR;   
    begin
       open o_cur for
          select i_name from dual;
    end P1;
    /
    
    create or replace function P2 ( i_name IN VARCHAR2
    ) 
    return SYS_REFCURSOR
    is
       v_cur          SYS_REFCURSOR;   
    begin
       p1( i_name, v_cur); 
       return v_cur;
    end P2;
    /
    
    create or replace procedure P3 ( i_name IN VARCHAR2, 
       o_cur          out   SYS_REFCURSOR )
    is
       v_cur          SYS_REFCURSOR;   
    begin
       p1( i_name, o_cur);      
    end P3;
    /
    
    
    declare
       v_name         varchar2(100) := 'test1';
       v_cur          SYS_REFCURSOR;      
       v_fetch_var    varchar2(100);
    begin
       --P3(v_name, v_cur);
       v_cur := P2(v_name);
       
       if v_cur%ISOPEN then
          dbms_output.put_line('v_cur%ISOPEN=true');
       else
          dbms_output.put_line('v_cur%ISOPEN=false');
       end if;
       --
       loop
          fetch v_cur into v_fetch_var;
             exit when v_cur%notfound;
             dbms_output.put_line('v_fetch_var='||v_fetch_var);
       end loop;
    end;
    /*
    Output:
    PROCEDURE P1 compiled
    FUNCTION P2 compiled
    PROCEDURE P3 compiled
    anonymous block completed
    v_cur%ISOPEN=true
    v_fetch_var=test1
    */
    Published by: CharlesRoos on February 8, 2010 05:06

    CharlesRoos wrote:

    Thenn should be documentation that says "recovery of the data type that sys_refcursor fails if you pass by reference too often."

    I can't really work on what your nested code is supposed to do, but in a simple example, this statement is false.

    SQL> create or replace procedure p1 (l_c out sys_refcursor)
      2  is
      3  begin
      4      open l_c for select dummy from dual;
      5  end;
      6  /
    
    Procedure created.
    
    SQL> create or replace procedure p2 (l_c out sys_refcursor)
      2  is
      3  begin
      4      p1 (l_c);
      5  end;
      6  /
    
    Procedure created.
    
    SQL> var c refcursor
    SQL> exec p2 (:c)
    
    PL/SQL procedure successfully completed.
    
    SQL> print c
    
    D
    -
    X
    
    SQL> create or replace procedure p3 (l_c out sys_refcursor)
      2  is
      3  begin
      4      p2 (l_c);
      5  end;
      6  /
    
    Procedure created.
    
    SQL> exec p3 (:c)
    
    PL/SQL procedure successfully completed.
    
    SQL> print c
    
    D
    -
    X
    
    SQL>
    

    However, I would say from a Ref Cursor once between PL/SQL procedures is already too.

    Re: Extract of the cursor variable

    And there is documentation saying that.

    http://download.Oracle.com/docs/CD/E11882_01/AppDev.112/e10472/static.htm#CIHCJBJJ

    Purpose of cursor Variables

    Variable cursor allows you to pass between PL/SQL stored subprograms and their clientssets of query results. This is possible because the PL/SQL and its clients share a pointer to the work area where the result set is stored.

  • ORA-01103: name of database 'Soqs2' in the control file is not ' tests1...

    Hello, please help me on this... im using 10.2.0.4.0, DB created by ex-colleague

    When the db connection has ora error 1103 and tried to create controlfile using track, but I could not

    Here are the details:

    Tests1 > bootable media.
    ORACLE instance started.

    Total System Global Area 734003200 bytes
    Bytes of size 2141536 fixed
    328159904 variable size bytes
    369098752 of database buffers bytes
    Redo buffers 34603008 bytes
    ORA-01103: "Used2" database name in the control file is not "Tests1.

    you want save ctl file and changing the dbname, get error below...

    Tests1 > alter database backup controlfile to trace;
    ALTER database backup controlfile to trace
    *
    ERROR on line 1:
    ORA-01507: database not mounted

    TESTING1:/app/Oracle/TESTING1/product/10.2.0.4/DBS > grep db_name initTESTING1.ora
    * .db_name = "Gel1.

    I found used2 entered into the alert log file...

    Tests1: / app/oracle/tests1/admin/bdump > grep used2 alert_TESTING1.log
    DBNAME will change to the new DBNAME of used2 tests1
    Name of database used2.
    ID of the database for the database used2 changed in 1933958893.

    I tried to create new controlfile and tried to start... got under error so I hv mentioned even path of the data files...
    ORA-01161: name of database used2 in the file header does not match name tests1

    This is the first law of holes.

    When you are in a hole, the first thing you can do is STOP digging.

    Did you take a full backup, the cold since the event started?

    DBNAME will change to the new DBNAME of used2 tests1

    When & why this has happened?

    You have a valid & recent backup?

    I tried to create new controlfile

    Why did you do this?

    Edited by: sb92075 may 7, 2010 20:36

  • Error creating a salary. ORA-01422: exact fetch returns more than the requested number of rows in the hr_maintain_proposal_swi procedure insert_salary_proposal package

    Hi all

    We try to add new proposal for a salary of some employees from form August 1, 2015 (the Date of the beginning of employee)

    There is no existing salary proposal doesn't exist for these employees.

    We get below error.


    ORA-01422: exact fetch returns more than the requested number of rows in the hr_maintain_proposal_swi procedure insert_salary_proposal package


    Help, please.

    Thank you

    Tarun

    Hi John,.

    If it helps, take a look at the following note:

    ORA-01422 exact Fetch returns more than number of lines requested in Hr_maintain_proposal_swi (Doc ID 1673527.1)

    Kind regards

    Rajen

  • Problem with error ORA-06502: PL/SQL: numeric string or the error value

    Hello

    I use a loop for the coil just out of data using 'dbms_output.put_line' and I get this error after a few records. I've been using and it happens at a different interval. He would have to do with the length of the question, I am trying to spool? Thank you.

    ORA-06502: PL/SQL: numeric string or the error value

    SD wrote:
    Hello

    I use a loop for the coil just out of data using 'dbms_output.put_line' and I get this error after a few records. I've been using and it happens at a different interval. He would have to do with the length of the question, I am trying to spool? Thank you.

    ORA-06502: PL/SQL: numeric string or the error value

    Yes, it's a mistake to dependent data.

    Manage: SD
    Status level: Beginner
    Join date: November 21, 2001
    Messages total: 289
    Total Questions: 189 (183 pending)

    Why wasting you time here when you get rarely answers your questions?

  • If sendAndLoad() returns correctly in the swf file, but not when they are incorporated...

    If sendAndLoad() returns correctly in the swf file, but not when they are incorporated, does this mean that I am missing something in my html code?

    I use generic Flash embed code generated from Dreamweaver.  I can post more information if necessary.

    Thank you

    Peter

    peterbrinson wrote:

    Very useful.

    Is it because my swf/html and the database are in very different places?

    Yes, they are in different domains and adobe imposes restrictions on what a swf file can do with the data from one server to another (from the swf) area.

    Are you talking about a PHP or ASP file that integrates the swf?

    lol you create an executable file on the same server that hosts your swf.  This executable can query your database and not trigger cross-domain issues.

    your swf file can send and receive data from and to this executable without triggering cross-domain issues.

  • 500 the application author does not match the author token of debugging

    My name is Jean-François Geyelin. My application name is PewPew.

    When you try to run PewPew on a playbook, I get the error "500 the Application author does not match debug token author.":

    the command deploy blackberry - installApp-password abdelkader 192.168.1.37 - package device-Debug/PewPew.bar returns:

    Info: Send request: install
    Info: Action: install
    Info: File size: 3575023
    Info: installation...
    Info: Treatment 3575023 bytes
    actual_dname:
    actual_id:
    actual_version:
    result::failure 500 the Application author does not match debug author token.

    I did check the following:

    the blackberry-nativepackager - listManifest PewPew.bar command returns (among others):

    Package-author: Jean-Francois Geyelin

    Package-author-Id: gYAAgPqb4i9DBQ-DjR0zWsAWK8s

    blackberry nativepackager - listManifest library/Research\ In\ Motion control / debugtoken1.bar returns (among others):

    Package-author: Jean-Francois Geyelin
    Package-author-Id: gYAAgPqb4i9DBQ-DjR0zWsAWK8s

    What should I check or what is the problem?


    Problem solved by clearing and forwarding of the token of the device debugging.

  • I just tried to reinstall Acrobat 9.0 on my Mac. I'm going to the message I had the serial number does not match to. I bought for Windows in 2010 and he switched to Mac using Adobe. I now cannot install and this forum was fired by news

    I just tried to reinstall Acrobat 9.0 on my Mac. I'm going to the message I had the serial number does not match to. I bought for Windows in 2010 and he switched to Mac using Adobe. I now cannot install and this forum has been returned by the current agent. Can someone please? I don't have the funds to buy it again. Thank you.

    You can only do it in 1 or 2 years after purchase.  If you don't have that you received a serial number mac.

    check your account, Adobe ID Code

    If she is not there and you don't have to record the serial number of your mac on and fix you is perhaps not able to activate acrobat 9, but there is a chance adobe support would help.  Contact adobe during the time pst support by clicking here and, when available, click on "still need help," https://helpx.adobe.com/contact.html

  • The unit type is not in pixels

    While I am using the following code in my Web form:

    trendScatterGraph.Width = new unit (80, UnitType.Percentage);

    She raised a System.ArgumentException exception is in NationalInstruments.UI.WebForms.dll.

    The exception message, said "the unit type is not in pixels.".

    Is it possible that I could use the width with percentage?

    Hi, gump996

    The help topic for the Width property explains that this is expected behavior: http://zone.ni.com/reference/en-XX/help/372636F-01/mstudiowebhelp/html/96e4115f/ . For convenience I have provided the online help topic as follows:

    Value of the property


    A Unit that specifies the width of the control. The default value is 200 pixels.

    Exceptions


















    Exception Condition
    ArgumentException The Type of the device is not Pixel.
    ArgumentOutOfRangeException The Unit value is less than 0.
    ObjectDisposedException The object is deleted.

    Remarks


    Images created on a Web server must have an explicit size. Therefore, the only Type which is allowed on the unit is Pixel.

    You can make this change on the client side of your web application using JavaScript. For example, if you make the change on the loading of the page, you could do something like the following:

    Window.OnLoad = function () {}
    var xyGraph = document.getElementById ('exampleContentHolder_xyDataGraph');
    xyGraph.style.width = 80%;
    };

  • the channel guide does not match the actual string

    the channel guide does not match the actual string that is to say PBS should be Channel 13 but is listed as channel 2 on the guide

    Hello James,.

    Welcome to the community of Sony.

    What is the model # of the TV?

    You can locate the model # of the TV from this link.

    You can try the steps mentioned on the underside of the base article of knowledge:

    http://www.KB.Sony.com/selfservice/documentLink.do?externalId=C408137

    Please mark it as "acceptable Solution" If you find this information useful.

    Kind regards

    Colby

  • Error: "the file is maybe damaged. the file header does not match the checksum calculated"during the installation of Windows 7/8

    * Original title: Question of re-Installation of operating system.

    I got the message during win 7 / Win 8 installation.

    "the file is maybe damaged. the file header does not match the checksum calculated.

    My config - processor Intel C2D, 2 GB of RAM, Intel motherboard, 500 GB HARD drive

    I have also replace Win 7 DVD and DVD player also replaced.

    I also reinstall my single RAM chip so many times. but the problem still exists.

    During Win XP SP 3 installation, no such message type not displayed. I can install it easily.

    Pls help me Sir, I would like to Win7 in my computer again.

    Hello

    Thanks for posting your query on the Microsoft Community.

    According to the description of the problem, it seems that you are facing the question with the reinstallation of Windows 7 on your computer.

    Because the computer does not recognize the CD - R into the DVD player probably boot order is set to hard drive first. I suggest to change the DVD boot priority in the BIOS and then try to perform the Startup Repair.

    Note: BIOS change / semiconductor (CMOS) to complementary metal oxide settings can cause serious problems that may prevent your computer from starting properly. Microsoft cannot guarantee that problems resulting from the configuration of the BIOS/CMOS settings can be solved. Changes to settings are at your own risk.

    In order to make changes in the BIOS, I suggest you to contact the manufacturer of the computer.

    Method 1:

    Unplug all external devices connected to the computer with the exception of the keyboard and mouse and check if the problem persists.

    M odes 2:

    If the problem persists try the Startup Repair. It is one of the recovery tools in the System Recovery Options menu. This set of tools is on your computer's hard disk and on the Windows installation disc. To learn more about Startup Repair , you can refer to the below mentioned article:

    http://Windows.Microsoft.com/en-us/Windows7/Startup-Repair-frequently-asked-questions

    Method 3:

    In addition, if startup repair is not enough, you can perform a system restore, check if it helps you to solve the problem. For reference, you can see the article mentioned below.

    What are the system recovery options in Windows 7?

    http://Windows.Microsoft.com/en-us/Windows7/what-are-the-system-recovery-options-in-Windows-7

    Note: when you perform the system restore to restore the computer to a previous state, programs and updates that you have installed are removed.

    Hope it would help. If problem persists always post back with the current state of your computer and the result of the proposed suggestion, we will be happy to help you.

    Kind regards

  • The installed product does not match the installation source (S). Until a matching source is provided or the installed product and source are synchronized... Cannot perform this action.

    Hello

    I'm not able to uninstall Skype on my laptop which is having windows 7 OS.
    It gives below error.
    The installed product does not match the installation source (S). Until a matching source is provided or the installed product and source are synchronized... Cannot perform this action.
    He appreciates if there is someone to support for this issue.
    Thank you
    Sandesh

    Hi Bader,

    Thanks for the kind reply. In fact before checking your response, I checked in my system there was the .msi from the Skype software installation file was missing. so I installed the same version installation file and then uninstalled the software.
    And I have installed the latest version of the Skype software.
    Thank you
    Sandesh
  • The column that does not match when comparing two records

    Hi all

    We try to compare two tables and find the differences. So if two records (1 of each table) have same PK but not always matching because of some columns, then we would display this columnname. For example:

    Table 1

    PK Parent Child Property1 Property2
    1AA1P1PR1
    2BB1P2oraPR2
    3CC1P3SRP

    Table 2

    PK Parent Child Property1 Property2
    1AA1P1PR1
    2BB1P2PR2
    3CC1P3PR4

    In the above example when I compare 2 tables all matches except Property2 online n ° 3. Thus, we would like to get an output like:

    PK Column_Mismatch
    3Property2 (this must be the name of the column that does not match)

    Appreciate the help.

    Thank you

    Andy

    Hi, Andy.

    Andy1484 wrote:

    Hi all

    We try to compare two tables and find the differences. So if two records (1 of each table) have same PK but not always matching because of some columns, then we would display this columnname. For example:

    Table 1

    PK Parent Child Property1 Property2
    1 A A1 P1 PR1
    2 B B1 P2 oraPR2
    3 C C1 P3 PR3

    Table 2

    PK Parent Child Property1 Property2
    1 A A1 P1 PR1
    2 B B1 P2 PR2
    3 C C1 P3 PR4

    In the above example when I compare 2 tables all matches except Property2 online n ° 3. Thus, we would like to get an output like:

    PK Column_Mismatch
    3 Property2 (this must be the name of the column that does not match)

    Appreciate the help.

    Thank you

    Andy

    Why you don't want no matter what exit for pk = 2?  Property2 does not correspond either to pk.

    What happens if the 2 columns (or more) do not match?  The following query would produce a list delimited, such as ' parents; PROPERTY2 '.

    WITH got_mismatch AS

    (

    SELECT pk

    , CASE WHEN t1.parent <> t2.parent THEN '; PARENT' END

    || CASE WHEN t1.child <> t2.child THEN '; CHILD ' END

    || CASE WHEN t1.properry1 <> t2.property1 THEN '; PROPERTY1 ' END

    || CASE WHEN t1.properry2 <> t2.property2 THEN '; PROPERTY2 ' END

    AS the offset

    FROM table_1 t1

    JOIN table_2 t2 ON t2.pk = t1.pk

    )

    SELECT pk

    , SUBSTR (incompatibility, 3) AS column_mismatch

    OF got_mismatch

    WHERE mismatch IS NOT NULL

    ;

    If you would care to post CREATE TABLE and INSERT statements for your sample data, and then I could test this.

    The query above does not count NULL values as inadequate.  If you want that, the same basic approach will work, but you can use DECODE instead of <> to compare columns.

    What happens if a pk exist in a table, but not the other?  You want an outer join, where I used an inner join above.

  • My payment deals due to a billing address error. "The billing address does not match your credit card information" or something like that. I can help with this?

    A month ago I started my trial version of CC. Immediately, I wanted to start my subscription. But even at the time my payment would not cross. I talked to your support by phone and got an e-mail link where I could fill my credit card information. The Defender said that as soon as Adobe has solved the technical problems (because saw it on the computer my billing address information was correct), he could enter the info for me.

    Now, I'm sitting here, without a work permit and still get the same message "the billing address does not match your credit card information.

    Contact technical support during business hours - for the link below, click on the still need help? option in the blue box below and choose the option to chat or by phone...

    Make sure that you are logged on the Adobe site, having cookies enabled, clearing your cookie cache.  If it fails to connect, try to use another browser.

  • See the value of zero instead of "the value entered does not match the format of the field [].

    I use the simplified notation filed to perform subtraction on a budget form.

    They all have an excellent work and have no problem display a value of zero when it's a simple subtraction (value1-value2).

    However, on my last field I want to take the total income and subtract what I spent (approximately 40 fields) and get a balance zero.

    When I try to do it I get this warning "the value entered does not match the format of the field [].

    The calculation works fine and displays the correct value for all the foregoing ".» 01 "and displays negative numbers. 01 "and underneath as well (if I go on the budget), she just may not show a zero, which is my goal for this equal to zero each month.

    I tried to watch if the forms and have not found an answer that works even for my situation.


    Happy to post the form here, just do not know how to do it.

    Thanks in advance,

    The custom calculation script may be something like the following:

    Get the value of field of income, as a number

    var v1 = + getField("Income").value;

    Set up an array of domain names

    var aFieldsToSubtract =]

    "ThithesB,"

    "TailleB,"

    "EFundB,"

    "MortgageB,"

    "HomeItemsB,"

    "HomeRepairsB,"

    "ElecticB,"

    "GasB.

    "WaterB."

    "SewerB,"

    "TrashB,"

    "PhoneB."

    "InternetB."

    "AutoInsB,"

    "UmbrellaB,"

    "IdentityB,"

    "CosmeticsB,"

    "ToiletriesB,"

    "PocketEBB,"

    "PocketCBB,"

    "GiftsB,"

    "HouseSuppliesB,"

    "PersonalOtherB,"

    "PersonalOther2B,"

    "GroceriesB,"

    "RestaurantsB,"

    "ClothingB,"

    "CarGasB,"

    "CarRepairsB,"

    "CarOtherB,"

    "MedicalBillsB,"

    "MedicalOtherB,"

    "EntertainmentB,"

    "VacationB,"

    "DebtCarB,"

    "DebtStudentLoan1B,"

    "DebtStudentLoan2B,"

    "DebtStudentLoan3B,"

    "DebtCreditB,"

    "DebtOther1B,"

    'DebtOther2B '.

    ];

    Subtract the values in field

    for (var i = 0; i)< afieldstosubtract.length,="" i="" +="1)">

    v1-= + getField(aFieldsToSubtract[i]).value;

    }

    Set this field value by rounding the result to the nearest

    Event.Value = util.printf ("%.2f", v1);

    Do not think of this as a band-aid, think the correct way to perform the calculation, because it is. Note that "Thithes" may be a spelling error.

Maybe you are looking for