zouziyu_1998
2021-07-21 17:52
采纳率: 100%
浏览 26

sql代码块中用游标DROP表怎么不行,很基础的一个问题,没搞懂。


DECLARE
    CURSOR C1 IS SELECT * FROM USER_TABLES WHERE TABLE_NAME LIKE 'JX%';
    V C1%ROWTYPE;
BEGIN
    OPEN C1;
       LOOP 
           FETCH C1 INTO V;
           EXIT WHEN C1%NOTFOUND;
           EXECUTE IMMEDIATE 'DROP TABLE V.TABLE_NAME';
       END LOOP;
    CLOSE C1;
END;

报错表或视图不存在,用DBMS_OUTPUT.PUT_LINE()能打印出来,但删除不行这是怎么回事啊?

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • 已采纳

    是oracle数据库吗?在USER_TABLES 名称前加上用户前缀。如:scott.USER_TABLES

    评论
    解决 无用
    打赏 举报
查看更多回答(1条)

相关推荐 更多相似问题