一个有趣并且有用的问题

创建一个procedure,代码如下:
create procedure A
is
begin
  proc@dblink;
end;
执行失败,提示ORA-04054: database link DBLINK does not exist
如何忽略此错误,先创建此过程,后创建数据库链接“DBLINK”???
我也来说两句 查看全部回复

最新回复

  • yzsind (2008-7-24 14:21:34)

    没看懂,什么有用有趣?
  • orallh (2008-7-24 14:26:26)

    “proc@dblink”
    proc是另一个服务器中的过程名
    dblink是数据库链路名,用于访问其它服务器中的数据库对象。
    哪位高人指点一下!!!
    小弟msn工作日在线:3xzx@163.com
  • hjwb1216 (2008-7-24 14:26:33)

    QUOTE:

    原帖由 orallh 于 2008-7-24 14:15 发表
    创建一个procedure,代码如下:
    create procedure A
    is
    begin
      proc@dblink;
    end;
    执行失败,提示ORA-04054: database link DBLINK does not exist
    如何忽略此错误,先创建此过程,后创建数据库链接“DBLINK ...
    当然是先创建 DBLINK了,不过没有觉得啥有趣
  • orallh (2008-7-24 14:32:51)

    世界上的事虽然有先有后,但也有例外的时候。现在就有个这样的情况,过程需要先建立,数据库链路在之后由其他人在其它时间创建,谢谢!
  • hjwb1216 (2008-7-24 14:55:50)

    先建当然没有问题,不过连编译都不能通过,有啥意义呢?
  • orallh (2008-7-24 15:14:58)

    待数据库链接创建后不就能编译通过,并且刚刚好用了吗------>。
  • hjwb1216 (2008-7-24 15:16:34)

    那你还得手工编译,觉得有必要吗?
  • orallh (2008-7-24 16:13:33)

    创建一个当前登录用户的dblink,创建过程;
    在后续创建需要的dblink,删除前创建的临时dblink。
  • philip_zhong (2008-7-24 17:37:36)

    用动态SQL吧,就能满足你的先编译后建dblink的要求,但是这样的话题实在没啥意义.
  • MarcConverter (2008-7-25 12:49:44)

    EXECUTE IMMEDIATE