0
我必须部署我的sql脚本,并为此我已在一个文件中定义了变量,并在另一个文件中创建了脚本。如何将绑定变量传递给for循环的视图
文件1:
Define_Variable.sql
DEFINE hr_SCHEMA =小时; 文件2:
Createfile.sql
declare
lctr varchar2(200);
BEGIN
for rec in (select view_name,count(1) as cnts from all_views where owner='&hr_SCHEMA .' AND VIEW_NAME IN('employee_user_v','employee_id_v') group by view_name)
LOOP
if (rec.cnts = 1) THEN
lctr:='DROP VIEW :owner.' || rec.view_name ;
execute immediate lctr using '&hr_SCHEMA.';
DBMS_OUTPUT.PUT_LINE('DROPPED VIEW OF..'|| rec.view_name);
else
DBMS_OUTPUT.PUT_LINE('no view found in the system');
end if;
END LOOP;
END ;
/
该变量已从定义变量.sql文件传递,所有表脚本已放置在create_table.sql和create_view.sql文件中的所有视图中。我创建了一个master.sql文件,在调用之后,将首先调用define_Variable.sql,然后再调用表脚本等。 –