Bir tablo oluştururken varsayılan tablo alanı nasıl belirlenir?


27

Tablo oluştururken Tablespaceparametre isteğe bağlıdır.

Bir CREATE TABLEifadenin yürütülmesinin ardından , tanımlanmamışsa Oracle varsayılanı atar.

Varsayılan veritabanında "KULLANICILAR" bir tablo alanı vardır. Tanımlanmış birkaç tablo alanı olsaydı hangisine atanırdı?

Yanıtlar:


41

Yeni bir kullanıcı oluşturduğunuzda, isteğe bağlı olarak o kullanıcı tarafından oluşturulan nesneler için varsayılan tablo alanını ve varsayılan geçici tablo alanını belirleyebilirsiniz. Örneğin:

CREATE USER phil IDENTIFIED BY l33t
       DEFAULT TABLESPACE philtablespace
       TEMPORARY TABLESPACE philtemp;

Kullanıcıyı oluştururken yan tümceleri çıkarırsanız, kullanıcı veritabanı varsayılan değerlerini devralır. Bunlar aşağıdaki gibi sorgulanabilir:

SQL> select *
  2  from database_properties
  3  where property_name like 'DEFAULT%TABLESPACE';

PROPERTY_NAME                  PROPERTY_VALUE       DESCRIPTION
------------------------------ -------------------- ----------------------------------------
DEFAULT_TEMP_TABLESPACE        TEMP                 Name of default temporary tablespace
DEFAULT_PERMANENT_TABLESPACE   USERS                Name of default permanent tablespace

SQL>

... ve bunun gibi değiştirildi:

alter database default tablespace PHILTS; 

alter database default temporary tablespace PHILTEMP;

Belirli bir kullanıcı için varsayılan değerleri sorgulamak için aşağıdaki sorguyu kullanın:

SQL> select USERNAME, DEFAULT_TABLESPACE, TEMPORARY_TABLESPACE
  2  from DBA_USERS
  3  where USERNAME='PHIL';

USERNAME                       DEFAULT_TABLESPACE             TEMPORARY_TABLESPACE
------------------------------ ------------------------------ ------------------------------
PHIL                           USERS                          TEMP

SQL>

5

SELECT DEFAULT_TABLESPACE FROM DBA_USERSHer kullanıcı için varsayılan tablo alanını bilmek. ALTER DATABASE DEFAULT TABLESPACE othertablespace;varsayılan tablo alanını değiştirmek için Normalde bazı tablo alanları varsa, yönetici gibi yeni bir kullanıcı oluştururken varsayılan tablo alanını ayarlamalıdır.CREATE USER myuser IDENTIFIED BY mypass DEFAULT TABLESPACE onetablespace

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.