用于除参数以外的SQL中的@符号是什么?

时间:2017-02-01 21:32:09

标签: sql database oracle

对于看起来像

的查询
select * from cus_query.ca_activity_vw@drifter

我认为cus_query是架构,视图的名称是ca_activity_vw。但是什么是漂流者?

2 个答案:

答案 0 :(得分:4)

我引用了Oracle文档:

  

如果标识符指定远程数据库上的对象,则必须使用其远程名称引用它。语法是:

       simple_identifier_name@link_to_remote_database
     

如果标识符在远程数据库的PL / SQL单元中声明,则必须使用其限定的远程名称引用它。语法是:

       unit_name.simple_identifier_name@link_to_remote_database

从此页面:http://docs.oracle.com/cd/E11882_01/appdev.112/e25519/fundamentals.htm#LNPLS99945

答案 1 :(得分:2)

drifter是一个所谓的database link - 它允许透明地查询驻留在不同数据库(通常是Oracle,但可能是其他一些RDBMS,例如通过Database gateway)的表。

要查看数据库链接的定义,您可以使用此查询(这需要DBA权限):

select * from dba_db_links