--查詢表及表中記錄數(shù)
豐都網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián),豐都網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為豐都上千多家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)營(yíng)銷網(wǎng)站建設(shè)要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的豐都做網(wǎng)站的公司定做!
select?TABLE_NAME,NUM_ROWS,OWNER
from?dba_all_tables?
where?owner=用戶名?and?NUM_ROWS1000
order?by?num_rows?desc
可以找出指定用戶的數(shù)據(jù)量大于1000條的數(shù)據(jù)表。執(zhí)行該語句需要有dba權(quán)限
1、查看表空間的大小,首先我們要登錄到oracle數(shù)據(jù)庫,我們要使用管理員的身份登錄,因?yàn)楣芾韱T的權(quán)限要相對(duì)的大一些。
2、登錄到數(shù)據(jù)庫之后,我們要在側(cè)邊欄找到dataspace這個(gè)文件夾,這個(gè)文件夾下存放的就是我們管理員可以管理的所有的表空間的名稱。
3、根據(jù)dataspace文件夾下的內(nèi)容名稱,選擇我們想要看的表空間,使用右鍵點(diǎn)擊的方式,選擇右鍵顯示中的屬性按鈕。
4、進(jìn)入到屬性表之后,我們可以看到當(dāng)前表空間的許多屬性,其中有個(gè)屬性叫做segment space management的選項(xiàng),當(dāng)這個(gè)選項(xiàng)的值為auto的時(shí)候,表示當(dāng)前表空間是可以自增長(zhǎng)的,否則就是固定大小的。
覺得你應(yīng)該先弄清楚oracle的常規(guī)數(shù)據(jù)字典的結(jié)構(gòu),像9i里的常規(guī)數(shù)據(jù)字典中對(duì)象名稱就有以USER,ALL,DBA為前綴的對(duì)象。
以USER為例,我們查該對(duì)象下有些什么表,就應(yīng)該執(zhí)行下列的語句:
SQLselect table_name from user_tables;
類似的,你可以進(jìn)行替換。:)
如果你想查數(shù)據(jù)庫中所有的表的話,可以查詢
SELECT * FROM dba_tables
如果你想查詢數(shù)據(jù)庫中某個(gè)用戶下的表的話,也可以登錄這個(gè)用戶,再查詢:
SELECT * FROM USER_TABLES
要想導(dǎo)入外部sql語句可以用命令
sql @e:\文件名.sql
如你想保存 select * from tablename;語句的結(jié)果,可以在sql*plus 里面這樣:
SPOOL c:\test.sql //這是保存文件的位置
select * from tablename;
SPOOL OFF
有兩種含義的表大小。一種是分配給一個(gè)表的物理空間數(shù)量,而不管空間是否被使用??梢赃@樣查詢獲得字節(jié)數(shù):
select segment_name, bytes?
from user_segments?
where segment_type = 'TABLE';?
或者
Select Segment_Name,Sum(bytes)/1024/1024 From User_Extents Group By Segment_Name
另一種表實(shí)際使用的空間。這樣查詢:
analyze table emp compute statistics;?
select num_rows * avg_row_len?
from user_tables?
where table_name = 'EMP';
查看每個(gè)表空間的大小
Select Tablespace_Name,Sum(bytes)/1024/1024 From Dba_Segments Group By Tablespace_Name
1、本文以plsql圖形化管理工具為例,使用它連接oracle數(shù)據(jù)庫。當(dāng)點(diǎn)開plsql的時(shí)候,就需要輸入用戶名、密碼、數(shù)據(jù)庫然后連接。如果連接成功,就能查看里面的表等等操作,如果連接不成功,就輸入正確的信息再次嘗試。
2、連接上數(shù)據(jù)庫之后,默認(rèn)會(huì)看到這個(gè)主界面。頂部是各種操作菜單,左側(cè)第一個(gè)框是最近打開的一些信息,第二個(gè)框里面的才是數(shù)據(jù)庫的所有信息。
3、如果不想看到這么多的框,只想專注于數(shù)據(jù)庫的相關(guān)信息,就可以將其他框關(guān)閉或者隱藏,這兩種方式只是點(diǎn)擊不同的按鈕而已,具體參見截圖。
4、在oracle數(shù)據(jù)庫中,用戶是屬于表空間的,因此,當(dāng)使用某一個(gè)用戶登錄之后,看到的其實(shí)就是這個(gè)用戶默認(rèn)的表空間中的信息。這個(gè)時(shí)候,可以展開【Tables】菜單,就能看到當(dāng)前表空間下的所有表,如果表的數(shù)量不多,就可以直接一個(gè)一個(gè)的數(shù)出數(shù)量。
5、如果當(dāng)前用戶具有管理員權(quán)限,還可以在【Tablespaces】菜單下面,找到所有的表空間名稱,在每個(gè)表空間名稱下面還有【Tables】菜單,這里面會(huì)顯示這個(gè)表空間下面的所有用戶和表。
注意,對(duì)于同一個(gè)表空間下的相同數(shù)據(jù)庫,在這里會(huì)顯示每個(gè)用戶都擁有一套表結(jié)構(gòu)
6、如果想直接獲得表空間中的表數(shù)量,可以點(diǎn)擊左上角的新建圖標(biāo),選擇【SQLWindow】,右側(cè)就會(huì)出現(xiàn)一個(gè)空白的SQL語句書寫窗口
7、獲取指定表空間下表數(shù)量(這是包含了此表空間下的所有用戶的表)
selectcount(1)fromall_tableswheretablespace_name='表空間名稱';獲取指定表空間下,指定用戶的表數(shù)量。
selectcount(1)fromall_tableswheretablespace_name='表空間名稱'andowner='用戶名稱';如果將count(1)換成星號(hào),就可以查詢表空間下的所有表名信息等。
可用如下語句查看:
select?round(BYTES/1024/1024,2)||'M'?from?user_segments?where?segment_name='表名';
注意:表名需要用英文大寫。
如要查詢數(shù)據(jù)庫中emp表的大小,用如下語句:
select round(BYTES/1024/1024,2)||'M' from user_segments where segment_name='EMP';
查詢結(jié)果:
查詢結(jié)果代表EMP表所占空間大小為0.06M。
分享題目:oracle如何找到大表 oracle看有哪些表
文章路徑:http://m.kartarina.com/article34/hgjdse.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、關(guān)鍵詞優(yōu)化、全網(wǎng)營(yíng)銷推廣、企業(yè)建站、、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)