如何查存储过程所属的用户?如何查询Oracle中所有用户信息
一、如何查询Oracle中所有用户信息
方法如下:
输入select* from dba_users;即可。
常用语句:
一,查看数据库里面所有用户:
select* from dba_users;
前提是你是有dba权限的帐号,如sys,system。
二,查看你能管理的所有用户:
select* from all_users;
三,查看当前用户信息:
select* fromuser_users;
扩展资料:
Oracle数据库最新版本为Oracle Database 12c。Oracle数据库12c引入了一个新的多承租方架构,使用该架构可轻松部署和管理数据库云。
此外,一些创新特性可最大限度地提高资源使用率和灵活性,如Oracle Multitenant可快速整合多个数据库,而Automatic Data Optimization和Heat Map能以更高的密度压缩数据和对数据分层。
这些独一无二的技术进步再加上在可用性、安全性和大数据支持方面的主要增强,使得Oracle数据库12c成为私有云和公有云部署的理想平台。
Oracle数据库具有完整的数据管理功能:
1)数据的大量性
2)数据的保存的持久性
3)数据的共享性
4)数据的可靠性
参考资料:百度百科:Oracle数据库
二、SQL命令查询Oracle存储过程信息
oracle数据库中,已建立好的存储过程信息存储在系统表ALL_SOURCE中,需要用sysdba身份登录数据库,进行查询操作,SQL命令如下:
SELECTline,textFROMALL_SOURCE
WHERETYPE='PROCEDURE'
ANDNAME='过程名称'
ANDOWNER='用户名'
ORDERBYline;
存储过程分成多行,每一行会存储为一条数据,所以,查询出来的会是多行,line表示行号。
ALL_SOURCE表中还存储了以下类型信息:
SQL>selectdistincttypefromall_source;
TYPE
------------
TYPE(对象)类型
TYPEBODY类型体
PROCEDURE存储过程
FUNCTION函数
TRIGGER触发器
PACKAGE包
PACKAGEBODY包体
三、Oracle 如何通过表查询存储过程名
1、第一种方法,打开PL/SQL,新建sql窗口。
2、输入过程的用户名及过程名,例如xxx.xxxx_xxxx,选中右击,选择view查看,选择edit编辑。
3、同样在PL/SQL中,打开Tool目录,确保Object Browser前面已打勾,然后口窗口右侧可以找到Objects小窗口,找到Procedures目录。
4、Objects小窗口中,点击<current user>,选择自己过程所在目录,如果是当前用户,则不用选择,然后展开Procedures目录,目录下即是过程名,可以找到自己需要的过程,右击选择view查看,选择edit编辑即可。
四、sql 存储过程查询语句
use MYTextDB----------使用MYTextDB数据库
CREATE PROCEDURE dbo.getUserList------------创建存储过程
as
set nocount on
begin-------------开始
select* from dbo.tbl_User-------------------定义SQL语句
end
go
EXEC dbo.getUserList---------------执行存储过程
在.NET的代码中调用:
'**通过Command对象调用存储过程**
DIM MyComm,MyRst
Set MyComm= Server.CreateObject("ADODB.Command")
MyComm.ActiveConnection= MyConStr'MyConStr是数据库连接字串
MyComm.CommandText="getUserList"'指定存储过程名
MyComm.CommandType= 4'表明这是一个存储过程
MyComm.Prepared= true'要求将SQL命令先行编译
Set MyRst= MyComm.Execute
Set MyComm= Nothing
存储过程取得的记录集赋给MyRst,接下来,可以对MyRst进行操作。
在以上代码中,CommandType属性表明请求的类型,取值及说明如下:
-1表明CommandText参数的类型无法确定
1表明CommandText是一般的命令类型
2表明CommandText参数是一个存在的表名称
4表明CommandText参数是一个存储过程的名称
还可以通过Connection对象或Recordset对象调用存储过程,方法分别如下:
'**通过Connection对象调用存储过程**
DIM MyConn,MyRst
Set MyConn= Server.CreateObject("ADODB.Connection")
MyConn.open MyConStr'MyConStr是数据库连接字串
Set MyRst= MyConn.Execute("getUserList",0,4)'最后一个参断含义同CommandType
Set MyConn= Nothing
'**通过Recordset对象调用存储过程**
DIM MyRst
Set MyRst= Server.CreateObject("ADODB.Recordset")
MyRst.open"getUserList",MyConStr,0,1,4
'MyConStr是数据库连接字串,最后一个参断含义与CommandType相同