1
我想手動將自定義BLOB
文件插入到本地表變量中。我想使用它像VARRAY
但我使用TABLE
類型,因爲我不知道文件的最大數量。在oracle中插入自定義記錄TABLE-VARRAY
這是我的包代碼:
CREATE OR REPLACE PACKAGE my_pkg AS
TYPE rec_headers IS RECORD
(
file1 BLOB := EMPTY_BLOB(),
file2 BLOB := EMPTY_BLOB()
);
TYPE tab_headers IS TABLE OF rec_headers;
END my_pkg;
這是我的PL \ SQL塊:
DECLARE
p_headers my_pkg.tab_headers;
p_my_file1 BLOB := EMPTY_BLOB();
p_my_file2 BLOB := EMPTY_BLOB();
BEGIN
p_headers := my_pkg.tab_headers();
/* Process that fills p_my_file1 and p_my_file2 */
p_headers.EXTEND;
p_headers(1) := my_pkg.rec_headers(p_my_file1, p_my_file2);
END;
/
我收到以下錯誤
PLS-00222: no function with name 'REC_HEADERS' exists in this scope
我假設是因爲rec_headers
是RECORD
類型,所以我試圖將其更改爲OBJECT
但它然後抱怨說,包內不支持。
我不能在包外創建OBJECT
類型,因爲我沒有特權(我不會得到它們)。
還有一種方法可以實現它只是使用變量?
簡單是最終的複雜,感謝的人 –