列出数据库中所有用户的自定义包?

Posted

技术标签:

【中文标题】列出数据库中所有用户的自定义包?【英文标题】:LIst out the custom packages from all users in database? 【发布时间】:2015-07-10 09:19:28 【问题描述】:

我需要数据库中所有用户想要自定义包的过程,我正在逐步解释,我需要查询或一些关于如何显示和选择特定用户的线索。

1.列出数据库中已有的用户

2.我们必须通过输入法选择一个特定的用户示例Ranjith

3.选择用户后应显示所选用户的自定义包。

4.下一步应该显示您已经选择用户的所有自定义包的源代码。

1.SELECT USERNAME FROM DBA_USERS它将显示数据库中的所有用户,之后我需要选择特定用户来显示自定义包

谢谢。

【问题讨论】:

首先,需求不明确。你想在哪里显示你的数据,在一个摇摆应用程序中,在控制台中?您如何尝试访问数据库?什么是数据库结构?这不够具体,您需要展示您尝试过的内容,没有人会为您编写完整的解决方案。 其实这是我的任务,所以我只需要在本地机器上显示用户,所以我理论上给出了 如果你想显示来自 db 的用户意味着我们将使用 SELECT USERNAME FROM DBA_USERS 在显示像 10 个用户之后,我如何选择特定用户并显示自定义包 我完全需要如下输出: 1. DB 的所有用户名 2.它应该提示我任何我想要详细信息的用户 3.对于特定用户选择显示所有包 4.显示源代码对于特定包所有这些语句我都需要它在一个 PL/SQL 程序中。提前感谢 solutn 【参考方案1】:
select object_name from dba_OBJECTs where owner = 'schema' and  object_type in ('FUNCTION','PACKAGE','PROCEDURE'); -- get user function,pkg, procedure. 

select * from dba_source where owner = 'schema' and name = 'object_name' order by type,line asc; -- view source of objects.

如果要提取对象的 ddl,请使用 dbms_metadata。

select name,text from dba_source where owner = 'user' and type in ('PACKAGE' ,'PACKAGE BODY','FUNCTION','PROCEDURE') 
order by name,type,line asc; -- return all source code for specifed user

【讨论】:

我需要你的更多 Arkadiusz Łukasiewicz。我的要求是显示所有用户,然后它应该提示选择所有用户中的任何用户。然后让特定用户显示所有包。一旦该用户下列出的包我们需要所有包的源代码。 但是你有什么问题 我完全需要如下输出: 首先查询指定用户的所有包、函数和过程的返回列表。第二个查询可以逐行返回指定用户和object_name(例如包名)的源代码。 我完全需要如下输出: 1. DB 的所有用户名 2.它应该提示我任何我想要详细信息的用户 3.对于特定用户选择显示所有包 4.显示源代码对于特定包所有这些语句我都需要它在一个 PL/SQL 程序中。提前感谢 solutn

以上是关于列出数据库中所有用户的自定义包?的主要内容,如果未能解决你的问题,请参考以下文章

导入语句未列出我的自定义 C++ 公开类

总结并列出 dplyr 中的自定义索引

DC.js 数据表的自定义文本过滤器

Symfony2 - 安装了 FOS 用户包的自定义身份验证提供程序

Kong API 网关中的自定义身份验证服务

我需要列出 SharePoint 网站中的自定义列表和库吗?