• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Oracle中判断有表DROP无表CREATE的存储过程

mysql 搞代码 4年前 (2022-01-09) 28次浏览 已收录 0个评论

CREATE OR REPLACE PROCEDURE PD_GENERATE_HELP_LAST_TABLES IS–把从sqlserver中生成的vw_last_xxx所对应的视图生成本地的数据表

首页 → 数据库技术

背景:

阅读新闻

Oracle中判断有表DROP无表CREATE的存储过程

[日期:2011-05-11]来源:Linux社区 作者:Linux[字体:]

CREATE OR REPLACE PROCEDURE PD_GENERATE_HELP_LAST_TABLES IS
–把从sqls

本文来源gaodai.ma#com搞##代!^码@网3

erver中生成的vw_last_xxx所对应的视图生成本地的数据表
tabNocount NUMBER ;
v_sql VARCHAR2(200);

BEGIN
–判断表dat_help_last_scqy1(成品油生产旬报)
SELECT count(*) INTO tabNocount FROM user_tables WHERE table_name = ‘DAT_HELP_LAST_SCQY1’;
IF tabNocount>0 THEN
dbms_output.put_line(‘drop table dat_help_last_scqy1’);
v_sql := ‘DROP TABLE DAT_HELP_LAST_SCQY1’;
EXECUTE IMMEDIATE v_sql;
END IF;
dbms_output.put_line(‘create table dat_help_last_scqy1’);
v_sql := ‘CREATE TABLE DAT_HELP_LAST_SCQY1 AS SELECT * FROM VW_LAST_SCQY1’;
EXECUTE IMMEDIATE v_sql;
–判断表dat_help_last_scqy2(成品油生产月报)

SELECT count(*) INTO tabNocount FROM user_tables WHERE table_name = ‘DAT_HELP_LAST_SCQY2’;
IF tabNocount>0 THEN
dbms_output.put_line(‘drop table dat_help_last_scqy2’);
v_sql := ‘DROP TABLE DAT_HELP_LAST_SCQY2’;
EXECUTE IMMEDIATE v_sql;
END IF;
dbms_output.put_line(‘create talbe dat_help_last_scqy2’);
v_sql := ‘CREATE TABLE DAT_HELP_LAST_SCQY2 AS SELECT * FROM VW_LAST_SCQY2’;
EXECUTE IMMEDIATE v_sql;
–判断表dat_help_last_shsndybb(能源调度月报表)
SELECT count(*) INTO tabNocount FROM user_tables WHERE table_name = ‘DAT_HELP_LAST_SHSNDYBB’;
IF tabNocount>0 THEN
dbms_output.put_line(‘drop table dat_help_last_shsndybb’);
v_sql := ‘DROP TABLE DAT_HELP_LAST_SHSNDYBB’;
EXECUTE IMMEDIATE v_sql;
END IF;
dbms_output.put_line(‘create table dat_help_last_shsndybb’);
v_sql := ‘CREATE TABLE dat_help_last_shsndybb AS SELECT * FROM vw_last_shsndybb’;
EXECUTE IMMEDIATE v_sql;
END PD_GENERATE_HELP_LAST_TABLES;

测试

begin
— Call the procedure
pd_generate_help_last_tables;
end;

如果出现 ORA-01031: 权限不足
ORA-06512: 在”SYSTEM.CCCCCC”, line 6
ORA-06512: 在line 1

的错误,则执行以下授权语句

grant create table to jwdc;
grant resource to jwdc;
grant create procedure to jwdc;

  • 0
  • Oracle 如何判断临时表是否存在

    Oracle客户端连接bug

    相关资讯 Oracle教程

    图片资讯

    本文评论  查看全部评论 (0)

    评论声明

    最新资讯

    本周热门

    Linux公社简介 – 广告服务 – 网站地图 – 帮助信息 – 联系我们
    本站(LinuxIDC)所刊载文章不代表同意其说法或描述,仅为提供更多信息,,也不构成任何建议。

    Copyright © 2006-2011 Linux公社 All rights reserved 浙ICP备06018118号


    搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
    转载请注明原文链接:Oracle中判断有表DROP无表CREATE的存储过程

    喜欢 (0)
    [搞代码]
    分享 (0)
    发表我的评论
    取消评论

    表情 贴图 加粗 删除线 居中 斜体 签到

    Hi,您需要填写昵称和邮箱!

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址