Làm thế nào là không gian bảng mặc định được xác định khi tạo bảng?


27

Các Tablespacetham số không bắt buộc khi tạo bảng.

Khi thực hiện một CREATE TABLEcâu lệnh, Oracle chỉ định câu lệnh mặc định nếu nó không được xác định.

Trong cơ sở dữ liệu mặc định có một vùng bảng "USERS". Nếu có một vài không gian bảng được xác định, cái nào sẽ được chỉ định?

Câu trả lời:


41

Khi bạn tạo một người dùng mới, bạn có thể tùy ý chỉ định không gian bảng mặc định và không gian bảng tạm thời mặc định cho bất kỳ đối tượng nào được tạo bởi người dùng đó. Ví dụ:

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

Nếu bạn bỏ qua các mệnh đề khi tạo người dùng, người dùng sẽ kế thừa các giá trị mặc định của cơ sở dữ liệu. Đây có thể được truy vấn như sau:

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>

... và sửa đổi như vậy:

alter database default tablespace PHILTS; 

alter database default temporary tablespace PHILTEMP;

Để truy vấn các giá trị mặc định cho một người dùng nhất định, hãy sử dụng truy vấn sau:

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_USERSđể biết không gian bảng mặc định cho mỗi người dùng. ALTER DATABASE DEFAULT TABLESPACE othertablespace;để thay đổi không gian bảng mặc định. Thông thường nếu có một số không gian bảng, quản trị viên nên đặt không gian bảng mặc định khi tạo người dùng mới nhưCREATE USER myuser IDENTIFIED BY mypass DEFAULT TABLESPACE onetablespace

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.