Oracle如何查看表空间内有哪些存储过程?

如题所述

SELECT a.owner,
a.segment_name,
b.OBJECT_NAME -- 存储过程名
From dba_segments a,
DBA_OBJECTS b
WHERE a.tablespace_name = '表空间名称'
and trim(a.owner) = trim(b.OWNER)
and b.OBJECT_TYPE = 'PROCEDURE' --对象类型:存储过程

一般查看的时候就用owner.OBJECT_NAME就是完整存储过程名
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2016-04-10
可以通过dba权限进行以下方法查询。
方法一(简单查询定位到所有的存储过程):
select * from DBA_objects where object_type='PROCEDURE' ;
方法二(复杂查询直接定位到表空间):

SELECT * from dba_segments a, DBA_OBJECTS b WHERE a.tablespace_name = 'tablespace' and trim(a.owner) = trim(b.owner ) and b.OBJECT_TYPE = 'PROCEDURE'
第2个回答  2013-09-09
表空间里保存的是segment而不是存储过程,存储过程包括function,package,procedure,trigger等等,通过表空间是找不到任何存储过程的
查dba_objects这个字典吧,具体看object_type
第3个回答  2013-09-09
SELECT * FROM Dba_Procedures a WHERE a.owner = '实例名'

怎么才oracle中查看存储过程
1、登录第三方工具(如pl\/sql)登录到指定数据库。2、左侧树中找到Procedures,然后找到相应的存储过程。3、右键该存储过程,选择“查看”。4、然后就可以看到了。

在Oracle中如何查询一个表空间下所有的存储过程啊或者是一个用户下面...
一个用户下面所有的存储过程:如果有DBA权限 select * from DBA_objects where object_type='PROCEDURE' and owner='user_name'否则就all_objects 一个表空间下所有的存储过程:这个应该没有意义

oracle中的触发器、存储过程、函数可以指定表空间吗?
触发器、存储过程、函数都属于用户(方案)的逻辑对象,它们都跟着用户的存在而存在。但它们都存放在系统表空间中,通过数据字典视图all_source能够查到。

请问oracle数据库中序列、存储过程等能不能指定不同的表空间?
(1)是的,用户创建的所有数据对象如果不特别地指定空间,那么都被存储在了用户的默认表空间上。(2)不全是这样,同义词是和你创建对象(表或是过程)一个空间,例,你的表在A空间,你继这个表建的同义词当然也会在A空间上,序列也一样。存储过程是可以指定空间的。

Oracle如何存储数据呢?
Oracle通过多种方式存储数据,主要包括数据字典、表空间、段、区和数据块。数据字典是Oracle用于存储数据库的元数据的地方。元数据是指描述数据库结构和操作的数据。它包含了关于表、索引、视图、存储过程、触发器等对象的详细信息。表空间是逻辑存储区域,它将数据存储区划分成不同的部分,以便于管理和优化...

Oracle表空间
临时表空间:用于存储数据库操作过程中的中间结果,完成后将被自动释放。UNDO表空间:保存事务修改数据的旧值,支持数据回滚。数据库对象使用的空间称为段(Segment),包括表段、索引段、回滚段、临时段和高速缓存段等。区间(Extent)是分配给对象(如表)的连续块,一旦分配给某个对象,则不能再分配给...

如何查看oracle临时表空间当前使用了多少空间的大小
1、查看临时表空间 (dba_temp_files视图)(v_$tempfile视图)select tablespace_name,file_name,bytes\/1024\/1024 file_size,autoextensible from dba_temp_files;select status,enabled, name, bytes\/1024\/1024 file_size from v_$tempfile;--sys用户查看 2、缩小临时表空间大小 alter database temp...

oracle删除一些表数据,然后释放表空间的存储过程
--删除表bbb所有数据 execute immediate 'truncate table bbb';commit;--将临时表aaa的数据转移到bbb表中 insert into bbb select * from aaa;commit;--删除临时表aaa execute immediate 'drop table aaa';commit;end;顺便说一句,你之前为什么要delete表bbb里的数据呢?还有,你存储过程里没end ---...

为什么在Oracle中,删除了表空间但是对应的数据文件还存在?
1、首先表空间分三种。永久表空间:是存储数据库中需要永久化存储的对象,如表、视图、存储过程、索引等。临时表空间:存储数据库中的执行过程,临时表空间是通用的。undo表空间:保存数据修改前的副本。2、然后要查看用户默认表空间和临时表空间select default_tablespace,temporary_tablespace from dba_...

oracle 触发器,函数,存储过程,包,作业等放在哪个表空间
1.这些一般都放在SYSTEM表空间里 2.这些基本上都不占空间的,存在其它表空间没多大意义,而且ORACLE DD需要用到这些东西

相似回答