有沒有辦法用所需的大小聲明varchar2常量?有沒有辦法用所需的大小自動聲明一個varchar2常量?
例如我想有以下定義,而不必在括號中顯式聲明大小:
c_my_string constant varchar2(3) := 'abc';
有沒有辦法做這樣的事情:
c_my_string constant varchar2(sizeof('abc')) := 'abc';
除此之外,我當然可以定義常數作爲原料,然後將其轉換爲使用UTL_RAW.CAST_TO_VARCHAR2(my_raw);
不就是比你的第一線短/簡單...爲什麼你想使聲明比它真正需要的更復雜? – Ditto
只有在常量與表格列相關時,即使您只能設置最大尺寸,而不是實際尺寸。爲什麼硬編碼字符串的長度是一個問題? –
這將是懶惰的,但你可以使用'c_my_string long:='abc';'。請注意,PL/SQL中的'long'只是'varchar2(32760)'的簡寫。 –