【发布时间】:2015-12-01 09:45:58
【问题描述】:
我为 dblink 创建了同义词。
create synonym dblink2 for dblink1
但是当我使用同义词而不是 dblink 查询任何内容时,我收到 connection description for remote database not found 错误。
SELECT * FROM DUAL@DBLINK2
如何使用同义词进行查询?
编辑:我知道如果我使用 dblink 创建表视图,它会起作用。但我的要求是上面的问题。
【问题讨论】:
-
为远程数据库中的表创建同义词比为 dblink 本身创建同义词更有意义。例如:
create synonym dual_dblink2 for dual@dblink1 -
100 个表。无法创建 100 个同义词。
-
你实际上不能按照你的要求去做。你为什么要这样做?与创建指向同一个地方的不同名称的 db_link 相比,似乎没有明显的优势,即使这似乎是一个奇怪的要求。如果你解释一下你为什么想要这个,有人可能会提出一个同样有效的替代解决方案。
-
100 同义词到底有什么问题?我的意思是您关心对象的数量还是只关心创建对象所需的时间?
-
@Nitish,您可以在数据库中定义的同义词数量几乎没有限制。如果您的数据库有 100 个表,那么没有什么能阻止您创建 100 个同义词。