一直以来,我以为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
感谢阅读~