create or replace procedure proc_rgb_optimation_backup (p_table_name varchar2) is
sql_statement varchar2(500);
i_l_count pls_integer;
sql_count varchar2(200);
new_table varchar2(30);
begin
new_table := 'TBL_BMCODE_RGB_OPT_' || to_char(sysdate,'yyyyMMdd'); --变量赋值用 :=
i_l_count := 0;
sql_count := 'select count(*) from user_tables t where t.TABLE_NAME ='
|| '''' || new_table || ''''; --这里注意 两个单引号表示一个单引号(‘)
execute immediate sql_count into i_l_count; -- 用 execute immediate 来执行sql . 用 into 来接收返回值
if i_l_count<=0 then
sql_statement := 'create table ' || new_table || ' as select * From ' || p_table_name;
else
sql_statement := 'INSERT INTO ' || new_table || '(BM_CODE,SPEED,RGB_OLD,RGB_OPTI,TRAVELTIME,TIMESTAMP,DURATION,SAMPLE,NUM_RED,NUM_YELLOW) select BM_CODE,SPEED,RGB_OLD,RGB_OPTI,TRAVELTIME,TIMESTAMP,DURATION,SAMPLE,NUM_RED,NUM_YELLOW from ' || p_table_name;
end if;
execute immediate sql_statement;
commit;
EXCEPTION
WHEN dup_val_on_index THEN
rollback;
WHEN timeout_on_resource THEN
rollback;
WHEN NO_DATA_FOUND THEN
rollback;
end;
分享到:
相关推荐
Oracle动态SQL之本地动态SQL的使用.pdf
oracle动态sql例子,适用于存储过程中拼接sql
总结Oracle 脚本编程中,动态SQL的几种用法
oracle动态sql之EXECUTE IMMEDIATE.docx
Oracle动态SQL之DBMS_SQL系统包的使用.pdf
Oracle中动态SQL详解,开发人员必备。
Oracle动态SQL4方法分析与应用.pdf
Oracle动态执行SQL四种方式的例子
本文讲解了基于Oracle高性能动态SQL程序开发。
Oracle批量执行传多个参数多个SQL文件,适合于跑批,生成环境直接测试,没有问题
oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具...
NULL 博文链接:https://kata520-java.iteye.com/blog/764253
Oracle与SQLServer的SQL语法差异,用简单易懂的语言和实例对Oracle和Sql Server语法之间的差异进行了对比分析,更加适用于入门的人
对ORACLE-SQL进行一些布局优化,更新它的格式
Oracle中执行动态SQL的几种方法 在一般的sql操作中,sql语句基本上都是固定的,如: SELECT t.empno,t.ename FROM scott.emp t WHERE t.deptno = 20; 但有的时候,从应用的需要或程序的编写出发,都可能需要用到动态...
本技术专题主要介绍如何使用Oracle SQL Developer和其他开发工具,内容包括使用Oracle Database Home Page、在Oracle中使用SQL*Plus、如何用SQL Developer来操作Oracle数据库以及表列定义等等。
Oracle和SqlServer的语法区别