【发布时间】:2018-11-26 10:44:31
【问题描述】:
我想了解如何根据作为过程输入接收到的表名动态创建记录类型。
例如:
PROCEDURE xxtest(p_table_name IN VARCHAR2)
IS
TYPE t_test_type IS TABLE OF p_table_name%ROWTYPE;
v_test_type t_test_type;
BEGIN
NULL;
END;
【问题讨论】:
-
无法完成。记录类型具有固定的投影。您要解决的实际问题是什么?也就是说,为什么需求导致你认为你需要动态创建记录类型变量?
-
这是在面试时问我的,但无法得到解决方案。所以很想知道这是如何实现的。
-
人们在面试中确实会问一些奇怪的问题。
-
也许这是那些“陷阱”问题之一......正确的答案是“您要解决的问题是什么?” (即,也许他们的人为问题可以使用 SQL 来解决,而不需要 PL/SQL 类型)
标签: oracle plsql plsql-package