Oracle
 sql >> Base de données >  >> RDS >> Oracle

Point d'exclamation en SQL (Oracle)

C'est une requête qui provient d'une base de données distante. La base de données où vous avez vu cette requête dans V$SQL a été référencée dans la requête sur la base de données distante à l'aide de la syntaxe @DB_NAME

La base de données distante a transmis la requête à votre base de données pour exécution, mais pour répondre à la requête, votre base de données doit extraire certaines informations de la base de données distante. C'est là que le @ ! entre, il s'agit essentiellement d'une référence à la base de données d'où provient la requête

Par exemple, créez un lien de base de données de test, même vers la même base de données, et exécutez ceci :

alter system flush shared_pool;
select sysdate from [email protected];
select sql_text from gv$sql where sql_fulltext like '%@!%';

SQL_TEXT
--------
SELECT [email protected]! FROM "DUAL" "A1"