Oracle能否用SQL语言来检测某个表空间是否已经存在? 5

Oracle能否用SQL语言来检测某个表空间是否已经存在?比如nnc_data01表空间。因为Oracle好像不允许建立同名的表空间。谢谢!... Oracle能否用SQL语言来检测某个表空间是否已经存在?比如nnc_data01表空间。因为Oracle好像不允许建立同名的表空间。谢谢! 展开
 我来答
kaixingui2012
2015-10-28 · TA获得超过4.2万个赞
知道大有可为答主
回答量:1.4万
采纳率:81%
帮助的人:6276万
展开全部

oracle查询已有的表空间名语句为:

select TABLESPACE_NAME from dba_tablespaces ;

查询表空间使用情况语句为:

SELECT SUM(bytes) / (1024 * 1024) AS free_space, tablespace_name 
FROM dba_free_space 
GROUP BY tablespace_name;

查看表空间物理文件的名称及大小 

SELECT tablespace_name, 
file_id, 
file_name, 
round(bytes / (1024 * 1024), 0) total_space 
FROM dba_data_files 
ORDER BY tablespace_name;
Ethan666888
2014-02-08 · TA获得超过1万个赞
知道小有建树答主
回答量:950
采纳率:50%
帮助的人:398万
展开全部
select dbms_metadata.get_ddl('TABLESPACE','表空间名称') FROM DUAL
可查看某个表空间是否存在
你这里的写法就是:select dbms_metadata.get_ddl('TABLESPACE','nnc_data01') FROM DUAL
追问
测试了没看出来有什么不一样的返回值。
连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
3
追答
换一种方式:

SELECT Total.name "Tablespace Name",
Free_space, (total_space-Free_space) Used_space, total_space
FROM
(select tablespace_name, sum(bytes/1024/1024) Free_Space
from sys.dba_free_space
group by tablespace_name
) Free,
(select b.name, sum(bytes/1024/1024) TOTAL_SPACE
from sys.v_$datafile a, sys.v_$tablespace B
where a.ts# = b.ts#
group by b.name
) Total
WHERE Free.Tablespace_name = Total.name and free.tablespace_name='表空间名';

表空间名在最后,你替换成‘nnc_data01’就行了
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
华萤远程
2021-12-12 · TA获得超过6.9万个赞
知道大有可为答主
回答量:6.8万
采纳率:100%
帮助的人:2315万
展开全部

oracle查询已有的表空间名语句为:

select TABLESPACE_NAME from dba_tablespaces ;

查询表空间使用情况语句为:

SELECT SUM(bytes) / (1024 * 1024) AS free_space, tablespace_name FROM dba_free_space GROUP BY tablespace_name;

查看表空间物理文件的名称及大小 :

SELECT tablespace_name, file_id, file_name, round(bytes / (1024 * 1024), 0) total_space FROM dba_data_files ORDER BY tablespace_name;

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
风清扬灬丶
2014-02-08 · 超过37用户采纳过TA的回答
知道小有建树答主
回答量:201
采纳率:0%
帮助的人:87.1万
展开全部
可以用SQL实现。

不允许创建相同的表空间名
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式