如何根據函數中的參數大小爲oracle包中的Varchar2類型的全局變量設置大小。Oracle包中的全局變量大小
CREATE OR REPLACE PACKAGE Test
AS
g_lastname Varchar2(15);
FUNCTION search(p_lastname IN varchar2);
END;
CREATE OR REPLACE PACKAGE BODY Test
AS
FUNCTION search(p_lastname IN VARCHAR2) return VARCHAR2
IS
BEGIN
g_lastname := p_lastname;
return g_lastname;
END;
END;
這裏的問題是,如果p_lastname大小超過15那麼它會給出錯誤。
@APC我將p_lastname的值賦給g_lastname的時候有問題,它給了我ORA-06502:PL/SQL:數字或值的錯誤:字符串緩衝區太小,錯誤。這應該是什麼原因,這裏p_lastname的大小是varchar2(1)。 謝謝。 – eatSleepCode