首頁  >  文章  >  資料庫  >  oracle預設表空間是什麼

oracle預設表空間是什麼

WBOY
WBOY原創
2022-01-25 10:46:187872瀏覽

在oracle中,預設表空間是使用者在建立時不特別指定表空間位置的儲存位置,可以利用ALTER指令修改表空間,語法為「ALTER DATABASE DEFAULT TABLESPACE users;」。

oracle預設表空間是什麼

本教學操作環境:Windows10系統、Oracle 11g版、Dell G3電腦。

oracle預設表空間是什麼

在oracle9i中,如果未使用 DEFAULT TABLESPACE 子句建立的所有使用者將以SYSTEM表空間作為它們的預設表空間。同時也不能為資料庫指定一個預設的表空間。

在Oracle 10g中定義了資料庫層級的預設表空間USERS,在建立使用者時沒有定義預設表空間,就會把資料庫層級的預設表空間當作自己的預設表空間。

在10g以前,就是把系統表空間(SYSTEMS)當作預設表空間。這樣很不合理。

            可以使用以下指令查看預設表空間:

/* Formatted on 2011/12/19 15:57:48(QP5 v5.185.11230.41888) */  
SELECT PROPERTY_VALUE  
  FROM database_properties  
 WHERE PROPERTY_NAME = 'DEFAULT_PERMANENT_TABLESPACE'

可以使用下列指令修改預設表空間:

ALTER DATABASE DEFAULT TABLESPACE users;

這裡有幾個注意事項:

1.     如果我們在建立使用者時指定了預設表空間,那麼在修改預設表空間後,先前使用者的預設表空間也會改變。

2.     如果我們在建立使用者時沒有指定使用者表空間,那麼預設也會使用DB的預設表空間,這時候如果我們修改了DB的預設表空間,使用者的表空間也會發生改變。

3.     如果我們在建立使用者指定使用者的表空間是其他的表空間,那麼我們修改DB的預設表空間不會影響使用者的表空間。

4.     DB的預設表空間無法刪除,除非預設表空間指向其他表空間之後才可刪除。

5.     如果使用者的預設表空間指向其他的表空間,當這個表空間被drop 之後,使用者的預設表空間會自動指向DB的預設表空間。

推薦教學:《Oracle影片教學

以上是oracle預設表空間是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn