Oracle 在PL/SQL中插入类似var的表
我是新来的Oracle 在PL/SQL中插入类似var的表,oracle,plsql,Oracle,Plsql,我是新来的PL/SQL,我正在尝试做以下工作: 通过var,将其像表格一样插入: DECLARE VL_TABLE_NAME VARCHAR2(100); BEGIN VL_TABLE_NAME := 'TABLE_NAME'; SELECT * FROM VL_TABLE_NAME; 你知道怎么做吗?我有个主意。您可以使用executeimmediate DECLARE VL_TABLE_NAME VARCHAR2(100); V_SQL VARCHAR2(400
PL/SQL
,我正在尝试做以下工作:
通过var,将其像表格一样插入:
DECLARE
VL_TABLE_NAME VARCHAR2(100);
BEGIN
VL_TABLE_NAME := 'TABLE_NAME';
SELECT *
FROM VL_TABLE_NAME;
你知道怎么做吗?我有个主意。您可以使用
executeimmediate
DECLARE
VL_TABLE_NAME VARCHAR2(100);
V_SQL VARCHAR2(4000);
BEGIN
VL_TABLE_NAME := 'TABLE_NAME';
V_SQL := 'SELECT * FROM ' || VL_TABLE_NAME;
EXECUTE IMMEDIATE V_SQL;
END;
有关本条款的更多信息,请阅读此处
您也可以使用DBMS\u SQL
我有个主意。您可以使用
executeimmediate
DECLARE
VL_TABLE_NAME VARCHAR2(100);
V_SQL VARCHAR2(4000);
BEGIN
VL_TABLE_NAME := 'TABLE_NAME';
V_SQL := 'SELECT * FROM ' || VL_TABLE_NAME;
EXECUTE IMMEDIATE V_SQL;
END;
有关本条款的更多信息,请阅读此处
您也可以使用DBMS\u SQL
要从参数化表中进行选择,您需要将查询构建为字符串,然后执行它。要在变量中“捕获”返回,还需要指定一个“INTO”子句
要从参数化表中进行选择,您需要将查询构建为字符串,然后执行它。要在变量中“捕获”返回,还需要指定一个“INTO”子句
因为表名和字段不能是变量。此概念是不受支持的语法。。要使其工作,必须使用动态SQL(一个变量)生成整个select语句,然后使用execute VL_SQL。所以类似于
VL|u SQL:=“从”|| VL|u TABLE|u NAME|“中选择*”
然后执行VL_SQL
示例:更多关于或使用,但不完全是你在想什么@xQbert。它起作用了!因为表名和字段不能是变量。此概念是不受支持的语法。。要使其工作,必须使用动态SQL(一个变量)生成整个select语句,然后使用execute VL_SQL。所以类似于VL|u SQL:=“从”|| VL|u TABLE|u NAME|“中选择*”
然后执行VL_SQL
示例:更多关于或使用,但不完全是你在想什么@xQbert。它起作用了!