#1
  1. No Profile Picture
    Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Oct 2004
    Posts
    56
    Rep Power
    10

    PL/SQL: numeric or value error: character string buffer too small


    I’m getting the following error when trying to populate the ‘user_defined_1’ field when the length is over 40 characters. Any ideas why this is happening?





    10/26/05-10:32:23: UpdateDatabase: ORA-06502: PL/SQL: numeric or value error: character string buffer too small

    10/26/05-10:32:23: UpdateDatabase: LoadTR_12:Inserting entry into test resultsTR/1.2:

    10/26/05-10:32:23: UpdateDatabase: Stored procedure failed - dumping to badfile



    ********************************************************************************************



    PROCEDURE LoadTR_12(load_list IN load_table) IS



    i_meas_code INTEGER := 3;

    i_meas_result INTEGER := 4;

    i_pass_fail INTEGER := 5;

    i_test_time INTEGER := 6;

    i_test_revision INTEGER :=7;

    i_recycle_time INTEGER :=8;

    i_attempts INTEGER :=9;

    i_recycles INTEGER :=10;

    i_failed_function_name INTEGER :=11;

    i_user_defined_1 INTEGER :=12;

    i_test_link_id INTEGER := 13;



    BEGIN



    CallPush('LoadTR_12:');



    /* Insert a test results entry. */

    InsertTestResultsExtended(load_list(i_test_link_id), load_list(i_meas_code),

    load_list(i_meas_result), load_list(i_pass_fail),

    load_list(i_test_time),load_list(i_test_revision),

    load_list(i_recycle_time),load_list(i_attempts),

    load_list(i_recycles),load_list(i_failed_function_name),

    load_list(i_user_defined_1));



    CallPop;



    END LoadTR_12;



    **************************************************************************************************** ********



    /*

    * PROCEDURE: InsertTestResultsExtended

    *

    * PURPOSE: Insert a row into the test result table.

    */



    PROCEDURE InsertTestResultsExtended(db_test_link_id IN VARCHAR2,

    db_meas_code IN VARCHAR2,

    db_meas_result IN VARCHAR2,

    db_pass_fail IN VARCHAR2,

    db_test_time IN VARCHAR2,

    db_test_revision IN VARCHAR2,

    db_recycle_time IN VARCHAR2,

    db_attempts IN VARCHAR2,

    db_recycles IN VARCHAR2,

    db_failed_function_name IN VARCHAR2,

    db_user_defined_1 IN VARCHAR2) IS



    BEGIN



    CallPush('InsertTestResultsExtended:');



    statement := 'Inserting entry into test results';

    INSERT INTO test_results (test_link_id, meas_code, meas_result, pass_fail, test_time,test_revision,recycle_time,attempts,recycles,failed_function_name,user_defined_1)

    VALUES (db_test_link_id, db_meas_code, to_number(db_meas_result), db_pass_fail, to_number(db_test_time),db_test_revision,to_number(db_recycle_time),to_number(db_attempts),to_number (db_recycles),db_failed_function_name,db_user_defined_1);



    CallPop;



    END InsertTestResultsExtended;







    l06db > desc test_results

    Name Null? Type

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

    TEST_LINK_ID NOT NULL VARCHAR2(16)

    MEAS_CODE VARCHAR2(8)

    MEAS_RESULT NUMBER(18,6)

    PASS_FAIL VARCHAR2(1)

    TEST_TIME NUMBER(8,3)

    TEST_REVISION VARCHAR2(10)

    RECYCLE_TIME NUMBER(8,3)

    ATTEMPTS NUMBER(3)

    RECYCLES NUMBER(3)

    FAILED_FUNCTION_NAME VARCHAR2(50)

    USER_DEFINED_1 VARCHAR2(255)
  2. #2
  3. Business Analyst
    Devshed Beginner (1000 - 1499 posts)

    Join Date
    Mar 2004
    Location
    The 'Ville
    Posts
    1,087
    Rep Power
    22
    Do you have the "create table" script that you used to create the table? Is it a varchar or char field allocated for more than 40 characters? Stupid question, but just making sure...
    Discontent is the first necessity of progress. - Edison

IMN logo majestic logo threadwatch logo seochat tools logo