一直以來,我以爲Navicat連接Oracle後, 下圖所示的就是表空間:
😂實際上,上面那些BI HR IX SYSTEM SCOTT
什麼的,都是模式,而不是表空間。數據庫用戶 和 模式之間是 一對一 的關係。一個模式爲一個數據庫用戶所有,並且具有與該用戶相同的名稱。
最好的例證是:
SQL> connect system/password as sysdba;
已連接。
# 查詢Oracle裏,所有用戶的SQL語句
SQL> select * from all_users order by username;
USERNAME USER_ID CREATED
------------------------------ ---------- --------------
ANONYMOUS 46 30-3月 -10
APEX_030200 78 30-3月 -10
APEX_PUBLIC_USER 76 30-3月 -10
APPQOSSYS 31 30-3月 -10
BI 90 29-4月 -20
CTXSYS 43 30-3月 -10
DBSNMP 30 30-3月 -10
DIP 14 30-3月 -10
EXFSYS 42 30-3月 -10
FLOWS_FILES 75 30-3月 -10
HR 85 29-4月 -20
USERNAME USER_ID CREATED
------------------------------ ---------- --------------
IX 87 29-4月 -20
MDDATA 65 30-3月 -10
MDSYS 57 30-3月 -10
MGMT_VIEW 74 30-3月 -10
OE 86 29-4月 -20
OLAPSYS 61 30-3月 -10
ORACLE_OCM 21 30-3月 -10
ORDDATA 54 30-3月 -10
ORDPLUGINS 55 30-3月 -10
ORDSYS 53 30-3月 -10
OUTLN 9 30-3月 -10
USERNAME USER_ID CREATED
------------------------------ ---------- --------------
OWBSYS 79 30-3月 -10
OWBSYS_AUDIT 83 30-3月 -10
PM 89 29-4月 -20
SCOTT 84 30-3月 -10
SH 88 29-4月 -20
SI_INFORMTN_SCHEMA 56 30-3月 -10
SPATIAL_CSW_ADMIN_USR 70 30-3月 -10
SPATIAL_WFS_ADMIN_USR 67 30-3月 -10
SYS 0 30-3月 -10
SYSMAN 72 30-3月 -10
SYSTEM 5 30-3月 -10
USERNAME USER_ID CREATED
------------------------------ ---------- --------------
WMSYS 32 30-3月 -10
XDB 45 30-3月 -10
XS$NULL 2147483638 30-3月 -10
已選擇36行。
USERNAME
列 正好和 Navicat展示的一樣,由此可知,它們是模式,而不是表空間。
模式(也可以說用戶,反正是一對一的關係)與表空間的關係是,多對一。
真要查看Oracle數據庫有哪些表空間的話,可以使用下面的SQL語句:
# 摘自《Oracle從入門到精通(第3版)》第245、246頁 8.1節
SQL> col tablespace_name for a10
SQL> col file_name for a50
SQL> col bytes for 999,999,999
SQL> select tablespace_name,file_name,bytes from dba_data_files order by tablespace_name;
TABLESPACE FILE_NAME BYTES
---------- -------------------------------------------------- ------------
EXAMPLE D:\APPS\ADMINISTRATOR\ORADATA\ORCL\EXAMPLE01.DBF 104,857,600
SYSAUX D:\APPS\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF 671,088,640
SYSTEM D:\APPS\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF 734,003,200
UNDOTBS1 D:\APPS\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF 104,857,600
USERS D:\APPS\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF 5,242,880
感謝閱讀~