如果我运行以下查询,我将找到未找到远程数据库的
SELECT * FROM DUAL@BLAH;
但是如果我把它放在一个匿名块中,它给 ORA-00942表或视图不存在错误。
BEGIN
SELECT * FROM DUAL@BLAH;
EXCEPTION
WHEN OTHERS THEN
NULL;
END;
答案 0 :(得分:0)
试试这个(动态SQL),你会得到ORA-02019 connection description for remote database not found
begin
EXECUTE IMMEDIATE 'select * from dual@blah';
end;
/
其他错误ORA-00942 table or view does not exist
可能是compilation
错误,而不是运行时错误。
编译错误的原因是,blah
在编译semantic
检查期间未知body {
height:2000px;
width: 100%;
margin:0;
padding:0;
}
#scroller-left{
position: fixed;
left: 0;
background:#CCC;
}
#scroller-right{
position: fixed;
right: 0;
background:#CCC;
}
,因为它未定义(同义词)。
答案 1 :(得分:0)
我建议ORA-02019是运行时错误。 SQL尝试在dblink上运行该表但失败。这就是ORA-02019发生的原因。而ORA-00942是编译时错误。在编译begin..end块时,它正在验证对象。验证失败,它抛出了ORA-00942。