ORA - 06550:Error

Declare

cursor cashCursor is

Select ename, empno, hiredate from emp;

type cash_tab is table of rowtype index of directory % cashCursor;

l_cashTab cash_tab;

number of l_counter: = 10;

Start

Open cashCursor;

collect the fetch cashCursor in bulk in the l_cashTab limit l_counter;

close cashCursor;

end;

Error is:

ORA-06550: line 11, column 4 &:

Pls-00597: Expression "L_CASHTAB" in the list INTO the wrong type

ORA-06550: line 11, column 12:

Pl/sql: Sql statement ignored.

Please help me...

Regarding what I checked, it looks like you could use BULK COLLECT of cursor % ROWTYPE that from Oracle 9.2.0.3 go.

bulk collection documents

A well documented limitation to COLLECT in BULK in 8i was that each column returned from an SQL statement or cursor must be its own index - by table or the collection. This means that many types had to be declared and maintains several index - by tables or collections, which could be very much focused on the code. There was available workaround solutions to overcome this limitation, but they often have less well.

Oracle 9i two Release introduces support of COLLECTION in BULK for collections of documents. This means that we can declare from 9.2.0.1, a simple associative array (new name for the index - by tables in 9i) or the type of collection based on one of the following.

  • table % ROWTYPE;
  • view % ROWTYPE;
  • type of record set by the user; and
  • cursor % ROWTYPE (9.2.0.3 from only).

The same check the link below.

http://www.Oracle-Developer.NET/display.php?ID=201

Tags: Database

Similar Questions

  • Process page returns ORA-06550: error

    APEX 4.1

    Oracle 11g

    Analysis of schema: MDM_APEX

    Data tables: MDM_DATA

    Creating a page process to take several pieces of an item in the list and insert it into a table.

    I use a function that works in the database (when it is called by SQL + and the toad) but get the following error message when you try to create the page APEX process:

    1 error has occurred

    ORA-06550: line 3, column 22: PL/SQL: ORA-00904: "UTIL". ' ' SPLIT ': invalid identifier ORA-06550: line 2, column 1: PL/SQL: statement ignored

    I have granted running the privs to APEX_040100 and MDM_APEX on the packaging. This function works in another application, but not to recognize in this application.

    Google search finds no solutions used for this question with regard to APEX. Suggestions on how to recognize the function of the APEX?


    Thank you

    Tim


    < code >

    Process page:

    INSERT INTO MDM_DATA. REF_CMR (STORE_CD)

    (SELECT * FROM TABLE (UTIL.) SPLIT (:P400_STORE_LIST,':')));

    < code >

    < code >

    CREATE OR REPLACE PACKAGE MDM_DATA. UTIL

    AS

    SPLIT FUNCTION (P_LIST VARCHAR2, P_DEL VARCHAR2: = ',') SPLIT_TBL RETURN PIPELINE;

    Etc...

    End UTIL;

    CREATE OR REPLACE PACKAGE BODY MDM_DATA. UTIL

    AS

    SPLIT FUNCTION (P_LIST VARCHAR2, P_DEL VARCHAR2: = ',') SPLIT_TBL RETURN PIPELINE

    AS

    L_IDX PLS_INTEGER;

    L_LIST VARCHAR2 (32767): = P_LIST;

    L_VALUE VARCHAR2 (32767).

    BEGIN

    LOOP

    L_IDX: = INSTR (L_LIST, P_DEL);

    IF L_IDX > 0

    THEN

    LINE OF CONDUCT (SUBSTR (L_LIST, 1, L_IDX - 1));

    L_LIST: = SUBSTR (L_LIST, L_IDX + LENGTH (P_DEL));

    ON THE OTHER

    PIPE ROW (L_LIST);

    EXIT;

    END IF;

    END LOOP;

    RETURN;

    EXCEPTION

    WHILE OTHERS THEN

    NULL;

    END SPLIT;


    ETC...

    End util;

    < code >

    INSERT INTO MDM_DATA. REF_CMR (STORE_CD)

    (SELECT * FROM TABLE (MDM_DATA. )) UTIL. SPLIT (:P400_STORE_LIST,':')));

  • ADR 3.0.1 install ORDS_PUBLIC_USER of error: ORA-06550, PLS-00103

    Try the Advanced installation of new ADR in a clean PDB 12 c (12.1.0.1) installation.

    If someone had the same problem and a work around?

    Error at startup to the line: 48 in command.

    Start

    run immediately "create user ORDS_PUBLIC_USER identified by ' ^ PUB_PWD ' account unlock default tablespace ^ temporary tablespace PUB_DATATBS ^ PUB_TEMPTBS';"

    end;

    Error report-

    ORA-06550: Line 2, column 23:

    PLS-00103: Fand das symbol "create user ORDS_PUBLIC_USER identified by 'mySecretPwd' als eines der following works wurde:

    (- + new case mod not null < an ID >)

    < between double quote delimited identifiers of > < a variable binding >

    continue the current avg County are min max sql stddev prior

    variance of the sum run forall fusion timestamp interval

    Date < a literal string with the specified set of characters >

    < a > < a SQL string between single quotes > hose

    < ein alternativ in Anfuhrungszeichen geset

    force_print

    It seems to be related to the change here:

    https://community.Oracle.com/thread/3731913

    Finally the installation of ADR is running. However still not showing apex, but which appear to be a different problem.

    Here is my solution to overcome the problem of creation of ORDS_PUBLIC_USER.

    The problem was that they changed it to use execute_immediate. However, lexical surrogates have ' included.

    Gives problems when adding to the string of immediate execution. And also problems for the password in quotation marks.

    In the ords.war file to find the ords_create_rest_users.sql and replace the relevant parts marked with blue lines.

    ...

    set PUB_PWD = ^ 1

    set PUB_DATATBS = ' ^ 2'

    set PUB_TEMPTBS = ' ^ 3'

    ALTER session set current_schema = SYS;

    -Remove user REST if exists

    ...

    -Create user ORDS_PUBLIC_USER and unlock the account

    create user ORDS_PUBLIC_USER identified by ' ^ PUB_PWD ' account unlock default tablespace ^ temporary tablespace PUB_DATATBS ^ PUB_TEMPTBS;

    ...

  • ORA-06550-PLS-00302 error on execution mapping

    I have a mapping in OWB 11.2.0.3, I can bend and validate.
    But if I like him to run it it fails with the following error:
    ORA-06550: line 1, column 1487: PLS-00302: component 'MAPPING_NAME' must be declared ORA-06550: line 1, column 1470: PL/SQL: statement ignored

    I've already found a post that said: grant run owner_name. "' name map ' to user_name;
    In my case it does solve the problem.

    Someone at - it an idea of what the problem might be?


    Thanks for any help,

    Benjamin

    We have the same problem on OWB 11.2.0.3 and resolved to rename a schema name, because it was the same thing to another database object. If this is your case, you can change the name of the database schema and the location on OWB.
    We hope this help you.

    To view the possible duplicate objects (drawing object):

    SELECT *.
    FROM DBA_OBJECTS
    WHERE OBJECT_NAME = '';

    On the Oracle document is much better explained:

    [http://docs.oracle.com/cd/E11882_01/relnotes.112/e24470/toc.htm]

    Oracle® Warehouse Builder Release Notes
    * 11g Release 2 (11.2) part number E24470-05 *.

    [...]

    7.14 existence of an object in the schema with the same name as the schema target in the database
    12776878: If an object exists in the schema with the same name as the schema target in the database, an error is displayed.

    For example:

    Named A schema has an object called q. schema named Q exists and has an object called Z.
    When you call from SchemaQ.ObjectZ to a scheme A, it looks in schema A Q.Z. Z is not found and displays the following error:

    ORA-06550:... : PLS-00302: component 'XYZ' must be declared
    Workaround: rename one of the objects Q to R or one letter other than Q.

    [...]

  • GoldenGate ORA-06550 Setup error

    Hello!!

    When executing scripts of goldengate, I got the following error

    SQL > @ddl_pin GGS_OWNER
    START dbms_shared_pool.keep('GGS_OWNER.) DDLReplication', 'P'); END;

    *
    ERROR on line 1:
    ORA-06550: line 1, column 7:
    PLS-00201: identifier ' INVALIDHTOMEH. KEEP ' should be declared
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored


    BEGIN dbms_shared_pool.keep ('GGS_OWNER.trace_put_line', 'P'); END;

    *
    ERROR on line 1:
    ORA-06550: line 1, column 7:
    PLS-00201: identifier ' INVALIDHTOMEH. KEEP ' should be declared
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored


    START dbms_shared_pool.keep('SYS.) GGS_DDL_TRIGGER_BEFORE', 'R'); END;

    *
    ERROR on line 1:
    ORA-06550: line 1, column 7:
    PLS-00201: identifier ' INVALIDHTOMEH. KEEP ' should be declared
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored

    can someone tell me how to fix?

    You must run dbmspool.sql as SYSDBA, then you will be able to run it.

    Don't forget to mark your questions as answered and help keep the forum clean.

    Greetings,
    NACEUR

    Published by: n on 2012-may-11 14:52

  • Error: * ORA-06550:

    Hello

    I create a Sql report and using this CODE


    with bills like)
    SELECT p.PARTY_NAME, p.MOB1_NO, sum (nvl(b.TOTAL_AMOUNT,0)) bill_amount
    PARTY_DETAILS p, BILL_DETAILS b
    where p.PARTY_NAME = b.PARTY_NAME (+)
    P.PARTY_NAME group, p.MOB1_NO
    ),
    payments)
    Select p.PARTY_NAME, sum (nvl (pd. TOTAL_AMOUNT, 0)) paid_amount
    PARTY_DETAILS p, pd of the PARTY_PAYMENT_DETAILS
    where p.PARTY_NAME = DB. PARTY_NAME (+)
    P.PARTY_NAME group
    )
    Select b.party_name, b.mob1_no, BILL_AMOUNT, PAID_AMOUNT, balance_amount BILL_AMOUNT-PAID_AMOUNT
    invoices, payments p b
    where b.PARTY_NAME = p.PARTY_NAME


    This code, the Code is Correct, I ran this code into the SQL command.

    But when I apply it to a region of the Page SQL Report then it shows me error

    1 error has occurred

    * ORA-06550: line 18, column 2: PL/SQL: ORA-00933: command not properly ended SQL ORA-06550: line 3, column 1: PL/SQL: SQL statement ignored ORA-06550: line 19, column 21: PLS-00103: encountered the symbol "end-of-file" when awaits one of the following numbers: (begin case declare exit end exception for goto rise back loop mod null pragma select update while with)


    How can I remove this error.
  • As I corrected the error?  ORA-06550-PLS-00357

    * {color: #0000ff} good morning *.

    * I'm trying to generate a file extension. txt,
    extracting information from a table named test, and I generated the
    Suite error ORA-06550: - and - PLS-00357: {color} *.


    CREATE TABLE ENSAYO
    (
    NUMBER OF CODE,
    DATE DATE default sysdate,
    NUMBER VARCHAR2 (40)
    )
    ;



    Insert of ensayo values(1,'12-12-2009','rey');
    Insert of ensayo values(2,'10-02-2009','luna');
    Insert of ensayo values(3,'16-03-2009','paola');
    Insert of ensayo values(4,'16-03-2009','Natalia');



    Set serverout
    DECLARE
    utl_file.file_type v1.
    v2 varchar2 (100);
    Start
    v1: = utl_file.fopen ('PUBLIC_ACCESS', 'prueb': to_char (sysdate, 'yyyymmdd') |'. txt', 'w');

    loop

    UTL_FILE.put_line (v1, Ensayo.Codigo);

    end loop;
    UTL_FILE.fclose (v1);
    exception
    while others then
    dbms_output.put_line (SQLERRM);
    end;
    /
    * {color: #ff0000} *.
    UTL_FILE.put_line (v1, Ensayo.Codigo);
    ***
    * {color} {color: #ff0000} ERROR en l & Yacute; NEA 7: *.
    ORA-06550: l & Yacute; NEA 7, column 32: *.
    PLS-00357: the referencia has the tabla, vista o sequence "ENSAYO. CÓDIGO ' no EST & szlig;. *
    permitida en este contexto
    ORA-06550: l & Yacute; NEA 7, column 4:
    * PL/SQL: statement ignored {color} *.





    * {color: #0000ff} that I correct the error? *

    * Thank you for your cooperation... *.
    * good day... *.
    * {color} *.


    * {color: #0000ff} *.
    * {color} *.


    * {color: #0000ff} Reynel Martinez Salazar. {color} *.

    You must use FOR cursor LOOP:

    DECLARE
    v1 utl_file.file_type;
    v2 varchar2 (100);
    begin
    v1:= utl_file.fopen('PUBLIC_ACCESS','prueb'||to_char(sysdate,'yyyymmdd')||'.txt','w');
    for rec in (select codigo from ensayo) loop
    utl_file.put_line(v1,rec.codigo);
    end loop;
    utl_file.fclose(v1);
    exception
    when others then
    dbms_output.put_line(sqlerrm);
    end;
    /
    
    PL/SQL procedure successfully completed.
    
    SQL> 
    

    SY.

  • Execution of procedure error: ORA-06550 and PLS-00103

    Hi, I created the stored procedure as,

    CREATE OR REPLACE PACKAGE BODY APPS.TMP_IMPORT_ITEMS_PKG AS
    
    
      PROCEDURE LOAD_INTERFACE_TABLE(organization_code IN VARCHAR2, errbuf OUT VARCHAR2, retcode OUT NUMBER) IS
    
    
      org_code varchar2(3);
    
    
      BEGIN
    
    
        org_code:= organization_code;
    
    
        DBMS_OUTPUT.PUT_LINE('Organization Code is...' || org_code);
    
    
      END LOAD_TABLE;
    
    
    END TMP_IMPORT_ITEMS_PKG;
    And here is the code I am trying to run:
    DECLARE
    
    
      V_ERRBUF VARCHAR2(1000);
    
    
      V_RETCODE NUMBER;
    
    
    BEGIN
    
    
      EXEC TMP_IMPORT_ITEMS_PKG.LOAD_INTERFACE_TABLE('x1', V_ERRBUF, V_RETCODE);
    
    
    END;
    When I run the above code, I get the following error:


    ORA-06550: line 5, column 10:
    PLS-00103: encountered the symbol "TMP_IMPORT_ITEMS_PKG" during the expected in the following way:


    := . ( @ % ;
    The symbol ': = ' was replaced by 'TMP_IMPORT_ITEMS_PKG' continue.

    Can any body tell me what is the problem with the above code
    Thanks in advance,
    Kumar K

    Published by: user2054206 on December 17, 2008 21:09

    Published by: user2054206 on December 17, 2008 21:27

    Hello

    In PL/SQL, you cannot call the procedure like exec... in sql, you can call exec but in PL/SQL, you can call as follows.

    DECLARE
    V_ERRBUF VARCHAR2 (1000);
    NUMBER OF V_RETCODE;
    BEGIN
    TMP_IMPORT_ITEMS_PKG. LOAD_INTERFACE_TABLE ('x 1', V_ERRBUF, V_RETCODE);
    END;

    I hope this works.

  • ORA-06550 assign the value to the parameter

    Hi trying to assign the date quarter to a variable and get this error message, how can I assign a value to this parameter to PL/SQL:

    declare

    Neighborhood varchar (2);

    Start

    Select to_char (sysdate, 'YYYY-Q') in double shifts;

    dbms_output.put_line (Quarter);

    end;

    [Error] Execution (05:42): ORA-06550: line 2, column 42:

    PLS-00201: identifier 'vQUARTER' must be declared.

    ORA-06550: line 2, column 50:

    PL/SQL: ORA-00904: invalid identifier

    ORA-06550: line 2, column 3:

    PL/SQL: SQL statement ignored

    ORA-06550: line 3, column 26:

    PLS-00201: identifier 'vQUARTER' must be declared.

    ORA-06550: line 3, column 5:

    PL/SQL: Statement ignored

    your error message refers to vQUARTER, which is not listed in your code example.

    In addition, quarter is 2 characters such as defined in your code, but you ask to 6 characters in there, for example, 2016-1

  • Why I'm not able to associate the user defined exception with ORA-01403 error code

    why I am not able to

    Associate a user defed exception with ORA-01403 error code?

    declare
     myException Exception;
     pragma exception_init(myException ,-1403);
    
     begin
     raise myException ;
    Exception
    when myException  then
     dbms_output.put_line('raised due to myException ');
     end;
    /
    

    exception of ABC;

    *

    ERROR on line 2:

    ORA-06550: line 2, column 4:

    PLS-00701: ORACLE error-1403 of PRAGMA EXCEPTION_INIT illegal number

    ORA-1403 is an outgoing BOF NO_DATA_FOUND exception. And we used to NO_DATA_FOUND in pragma exception_init + 100.

    Thus, instead of the you can used this different exception code which is not associated with any exception.

    For example:

    declare

    Exception myException;

    pragma exception_init (myException,-7856);

    Start

    raise myException;

    Exception

    When myException then

    dbms_output.put_line ('high due myException');

    end;

  • PLS-00306: wrong number or types of arguments in the call to 'XXC_AMOUNT' ORA-06550

    Hi all

    CREATE OR replace PROCEDURE Xxc_amount (v_item_id IN NUMBER,

                                             v_amount  OUT NUMBER,

                                             v_size    OUT NUMBER)

    IS

      v_size   NUMBER := NULL;

    v_amount NOMBRE;

    START

        BEGIN

    CHOOSE conversion_rate

            INTO   v_size

    FROM mtl_uom_class_conversions

            WHERE  inventory_item_id = v_item_id -- 2289;

            v_amount := Nvl (Trunc (v_size), 0);

    -RETURN (cp_cartons);

        EXCEPTION

            WHEN OTHERS THEN

              v_size := 0;

              dbms_output . Put_line ()' Error getting Item Id:'| V_ITEM_ID );

        END ;

    dbms_output. Put_line ('Qty-->' || v_amount );

    dbms_output. Put_line ('Qty1-->'|| v_size );

    END ;

    DECLARE

        amount NUMBER;

        v_size NUMBER;

    START

        Xxc_amount (2289, amount, v_size);

    dbms_output. Put_line (amount || '--' || v_size );

    END ;

    ORA-06550: line 5, column 5:

    PLS-00306: wrong number or types of arguments in the call to 'XXC_AMOUNT '.

    ORA-06550: line 5, column 5:

    PL/SQL: Statement ignored

    Thank you

    Post edited by: 994122 changed the name of the procedure to Xxc_amount Xxc_amount1

    Simply remove the declarations of the v_size and v_amount and it should work.

    The following text compiles and works for me when I call:

    CREATE OR replace PROCEDURE Xxc_amount (v_item_id IN NUMBER,
                                            v_amount  OUT NUMBER,
                                            v_size    OUT NUMBER)
    IS
    BEGIN
        BEGIN
            SELECT conversion_rate
            INTO  v_size
            FROM  mtl_uom_class_conversions
            WHERE  inventory_item_id = v_item_id; -- 2289;
            v_amount := Nvl (Trunc (v_size), 0);
        --RETURN (cp_cartons);
        EXCEPTION
            WHEN OTHERS THEN
              v_size := 0;
              dbms_output.Put_line ('Error in Getting for Item Id :'|| v_item_id);
        END;
        dbms_output.Put_line ('Qty-->' || v_amount);
        dbms_output.Put_line ('Qty1-->'|| v_size);
    END;
    
    DECLARE
        amount NUMBER;
        v_size NUMBER;
    BEGIN
        Xxc_amount (2289, amount, v_size);
        dbms_output.Put_line (amount || '--' || v_size);
    END;
    
  • ORA-06550, PLS-00306: wrong number or types of arguments in the call to ' |'

    Hi all

    Please help me about this error, if I comment the threshold (in the color of the thickness)

    ERROR on line 19:

    ORA-06550: line 19, column 25:

    PLS-00306: wrong number or types of arguments in the call to ' |'

    ORA-06550: line 19, column 3:

    PL/SQL: Statement ignored

    DECLARE

        TYPE nametable IS TABLE OF CHAR(10) INDEX BY BINARY_INTEGER;

        vname NAMETABLE

        CURSOR cf

        IS

          SELECT ename

            FROM emp;

        i     NUMBER;

    START

        OPEN cf;

        i := 1;

        LOOP

            FETCH cf INTO Vname (i);

            EXIT WHEN cf%NOTFOUND;

            i := i + 1;

        END LOOP;

        CLOSE cf;

    dbms_output. Put_line ('Name is ' || VNAME );

        FOR n IN 1.. VNAME . County LOOP

    dbms_output. Put_line ('Name is ' || VNAME (n));

        END LOOP;

    END ;


    Thank you

    VNAME is an associative array. You can not use in DBMS_OUTPUT. Put_line as such. You need to loop through what you did in the code after the DBMS_OUTPUT and print each element of the array individually.

  • ORA-06550: In SQL Script

    When I try to reach below as a script, I get the following error. Very simple syntax error, I could not find the problem

    ORA-06550: line 296, column 6:
    PLS-00103: encountered the symbol "SP_ST_EXCEL_IMPORT" during the expected in the following way:

    := . ( @ % ;
    The symbol ': = ' was replaced by 'SP_ST_EXCEL_IMPORT' continue.
    ORA-06550: line 297, column 6:
    PLS-00103: encountered the symbol "SP_ST_EXCEL_IMPORT" during the expected in the following way:

    := . ( @ % ;
    The symbol ': = ' was replaced by 'SP_ST_EXCEL_IMPORT' continue.

    set define off
    declare
    procedure sp_st_excel_import)
    iprofileid in varchar2,
    icurrent_title in varchar2,
    iupdated_title in varchar2,
    icurrent_supervisor_princ varchar2,
    iupdated_supervisor_princ varchar2
    )
    as
    vagent_id_c table1.agent_id_c%type;
    vbackup varchar2 (32767).
    Start
    Start
    Select agent_id_c
    in vagent_id_c
    FROM table1
    where acct_id_c = 000000000
    and agent_internal_id_c = iprofileid;
    exception
    while others then
    sp_i_adderror ('sp_st_excel_import', 0, "" Agent Id not found' ",);
    return;
    end;

    vbackup: = "" ' | " vagent_id_c | '",';


    If (icurrent_title is not null and iupdated_title is not null) then
    Select vbackup | '"' || titile_c | "', 'update',"
    in vbackup
    FROM table1
    where agent_id_c = vagent_id_c;
    Update table1
    Set titile_c = iupdated_title
    where agent_id_c = vagent_id_c;
    on the other
    Select vbackup | "" "" ","not updated","
    in vbackup
    FROM table1
    where agent_id_c = vagent_id_c;
    end if;

    If (iupdated_supervisor_princ is not null) then
    Select vbackup | '"' || agent_cust_1 | "', 'update',"
    in vbackup
    FROM table1
    where agent_id_c = vagent_id_c;
    Update table1
    Set agent_cust_1 = iupdated_supervisor_princ
    where agent_id_c = vagent_id_c;
    on the other
    Select vbackup | "" "" ","not updated","
    in vbackup
    FROM table1
    where agent_id_c = vagent_id_c;
    end if;

    sp_i_adderror('sp_st_excel_import',0,vbackup);
    end;

    Start
    sp_st_excel_import exec ('111', ", 'Manager',", 'test');
    sp_st_excel_import exec ('222', ",", ",");
    sp_st_excel_import exec ('333', ", 'Eat',", 'test');
    end;
    /

    Hello

    840992 wrote:

    When I try to reach below as a script, I get the following error. Very simple syntax error, I could not find the problem

    ORA-06550: line 296, column 6:
    PLS-00103: encountered the symbol "SP_ST_EXCEL_IMPORT" during the expected in the following way:

    := . ( @ % ;
    ...

    Start
    sp_st_excel_import exec ('111', ", 'Manager',", 'test');
    sp_st_excel_import exec ('222', ",", ",");
    sp_st_excel_import exec ('333', ", 'Eat',", 'test');
    end;
    /

    In Pl/SQL, you can call a procedure named SP_ST_EXCEL_IMPORT like this:

    sp_st_excel_import ('111', NULL, 'Manager', NULL, 'test');

    Note that there are no keyword EXEC.

    EXEC is a SQL * Plus command, which you can not run in PL/SQL (and you don't need to).

  • ORA-06550 for a process in the Page that discusses

    Hello
    I'm trying to create a process to update some data, but I know very well the syntax of the APEX for the procedures.
    I write the code in a process of 'Treatment of the Page' section.
    The code is:

    DECLARE w_TPS NUMBER (9.7);
    DECLARE w_TVQ NUMBER (9.7);
    DECLARE w_val_tot_lignes NUMBER (15.2);
    Start
    -Lire % GST
    SELECT NUM_PARAMETRE FROM w_TPS
    OF TBL_PARAMETRES
    WHERE COD_PARAMETRE = 'GST ';
    -Lire % QST
    SELECT NUM_PARAMETRE FROM w_TVQ
    OF TBL_PARAMETRES
    WHERE COD_PARAMETRE = 'QST;
    -Calculate total invoice
    SELECT SUM(NUM_HEURES * VAL_TAUX) FROM w_val_tot_lignes
    OF TBL_FACTURES_DETAIL
    WHERE ID_FACTURE_MASTER =: p225_id_facture_master;

    UPDATE tbl_factures_master
    SET VAL_FACTURE_NET = w_val_tot_lignes,
    POU_TPS = w_TPS,
    VAL_TPS = w_val_tot_lignes * w_TPS;
    POU_TVQ = w_TVQ,
    VAL_TVQ = w_val_tot_lignes * w_TPS;
    VAL_FACTURE_TOTAL = (w_val_tot_lignes * w_TPS) + (w_val_tot_lignes * w_TVQ) + w_val_tot_lignes
    WHERE id_facture_master =: p225_id_facture_master;

    end;

    The error:
    ORA-06550: line 3, column 1: PLS-00103: encountered the symbol "DECLARE" when expecting one of the following values: start type of the subtype of the function pragma < an ID > < a double quote delimited identifier > removal of current cursor exists before the symbol 'start' is substituted for 'SAID' continue. ORA-06550: line 4, column 1: PLS-00103: encountered the symbol "DECLARE" when expecting one of the following values: function < an ID > pragma procedure subtype type < to start a double-quotes

    I ran across this myself but I forgot the real reason.

    idea 1: hidden character
    solution: retype everything by hand.
    Make sure you do a 'ctrl-a' to 'select all' before clicking on 'delete' so that it picks up this hidden character.

    idea 2: bad SQL
    If I remember correctly, there was a typing error in my table name or column

    idea 2 b: bad SQL
    I don't see the name of schema for tables in one of your SELECT or UPDATE instructions.
    Try to add them.

    Run each of the SELECT/UPDATE with SQL Developer instructions to see if you notice a bug in the SQL code.

  • Oracle 11g {ORA-06550, PLS-00905}

    Hi all
    I am new to Oracle and I am trying to execute the procedure, but I get the error ORA-06550, PLS-00905
    Here is the procedure:
    create or replace PROCEDURE add_job
    (p_jobid IN jobs.empno%TYPE,
    p_jobtitle IN jobs.job%TYPE)
    IS
    BEGIN
    INSERT INTO scott.jobs (empno, job) VALUES (p_jobid, p_jobtitle);
    END add_job;
    /
    I type the following command to run the proc:
    Start
    add_job (6000, "ANALYST");
    end;

    Can anyone suggest something to remedy?
    Thanks in advance.

    Edited by: 994323 16/03/2013 15:37

    So mark your ANSWER question and provide your Oracle version 4-digit and use.

     tags next time you post.                                                                                                                                                                                                                                    
    

Maybe you are looking for