Database 在数据库中查找所有用户定义的公共同义词
我想查找所有用户定义的公共同义词,但all_同义词将返回由oracle和用户创建的所有同义词。如何仅从这些同义词中筛选用户创建的同义词您可以使用这些选项中的任何一个 如果您知道创建同义词的用户的姓名Database 在数据库中查找所有用户定义的公共同义词,database,oracle,Database,Oracle,我想查找所有用户定义的公共同义词,但all_同义词将返回由oracle和用户创建的所有同义词。如何仅从这些同义词中筛选用户创建的同义词您可以使用这些选项中的任何一个 如果您知道创建同义词的用户的姓名 select * from all_synonyms where owner IN ('SCHEMA_USER1','SCHEMA_USER2'); 如果您以特定用户身份登录,则将显示所有同义词 对用户是私有的 select * from user_synonyms; 如果您只查找公共同义词,则
select * from all_synonyms where owner IN ('SCHEMA_USER1','SCHEMA_USER2');
如果您以特定用户身份登录,则将显示所有同义词
对用户是私有的
select * from user_synonyms;
如果您只查找公共同义词,则此查询可能接近您要查找的内容
select * from all_synonyms where owner ='PUBLIC'
这将在system、sys
等拥有的表上显示同义词
您可以使用
select * from all_synonyms where owner ='PUBLIC' and
table_owner not IN ( 'SYS','SYSTEM') ;
您可以使用这些选项中的任何一个 如果您知道创建同义词的用户的姓名
select * from all_synonyms where owner IN ('SCHEMA_USER1','SCHEMA_USER2');
如果您以特定用户身份登录,则将显示所有同义词
对用户是私有的
select * from user_synonyms;
如果您只查找公共同义词,则此查询可能接近您要查找的内容
select * from all_synonyms where owner ='PUBLIC'
这将在system、sys
等拥有的表上显示同义词
您可以使用
select * from all_synonyms where owner ='PUBLIC' and
table_owner not IN ( 'SYS','SYSTEM') ;
使用
where owner IN('SCHEMA_USER1','SCHEMA_USER2')
等,或在以架构用户身份登录时从user_同义词中查询。当我使用以下查询时:选择*from user_同义词where owner='PUBLIC'返回一个错误,指出所有者无效标识符user_同义词中没有所有者,@Kaushik(如果你是这个意思,那么所有的同义词中都有)是的,@Littlefoot和Jaya,我指的是所有同义词
的条件。另一个选项是,如果您以特定用户身份登录,那么您可以简单地查询用户同义词
,而不必使用where子句作为所有者。我想找出数据库中所有用户定义的公共同义词,那么我该如何做才能更有效地@KaushikNayakusewhere owner IN('SCHEMA_USER1','SCHEMA_USER2')
等,或在以架构用户身份登录时从用户同义词中进行查询。当我使用以下查询时:选择*from user_同义词where owner='PUBLIC'返回一个错误,指出所有者无效标识符user_同义词中没有所有者,@Kaushik(如果你是这个意思,那么所有的同义词中都有)是的,@Littlefoot和Jaya,我指的是所有同义词
的条件。另一个选项是,如果您以特定用户身份登录,那么您可以简单地查询用户同义词
,而不必使用where子句作为所有者。我想找出数据库中所有用户定义的公共同义词,那么我该如何做才能更有效地@KaushikNayakI已经创建了一个公共同义词并运行了查询is应该显示公共同义词的计数为1,但是它显示了预期的输出,因为拥有者的数量更多,不仅仅是sys。因此,我创建的公共同义词将在哪个拥有者下运行感谢@KaushikNayakI已经创建了一个公共同义词并运行了查询is应该显示t公共同义词的计数是1,但它显示了预期的输出,因为所有者的数量不仅是sys,而且更多。因此,我创建的公共同义词将在哪个所有者下使用,谢谢@KaushikNayak