Tablespace
พารามิเตอร์เป็นตัวเลือกเมื่อมีการสร้างตาราง
เมื่อประมวลผลCREATE TABLE
คำสั่ง Oracle จะกำหนดค่าเริ่มต้นหากไม่ได้กำหนดไว้
ในฐานข้อมูลเริ่มต้นจะมีพื้นที่ตาราง "USERS" หากมีการกำหนดหลายพื้นที่ตารางหนึ่งจะกำหนดหนึ่ง
Tablespace
พารามิเตอร์เป็นตัวเลือกเมื่อมีการสร้างตาราง
เมื่อประมวลผลCREATE TABLE
คำสั่ง Oracle จะกำหนดค่าเริ่มต้นหากไม่ได้กำหนดไว้
ในฐานข้อมูลเริ่มต้นจะมีพื้นที่ตาราง "USERS" หากมีการกำหนดหลายพื้นที่ตารางหนึ่งจะกำหนดหนึ่ง
คำตอบ:
เมื่อคุณสร้างผู้ใช้ใหม่คุณสามารถเลือกที่จะกำหนดพื้นที่ตารางเริ่มต้นและพื้นที่ตารางชั่วคราวเริ่มต้นสำหรับวัตถุใด ๆ ที่สร้างโดยผู้ใช้รายนั้น ตัวอย่างเช่น:
CREATE USER phil IDENTIFIED BY l33t
DEFAULT TABLESPACE philtablespace
TEMPORARY TABLESPACE philtemp;
หากคุณไม่ใช้ส่วนคำสั่งเมื่อสร้างผู้ใช้ผู้ใช้จะสืบทอดค่าเริ่มต้นของฐานข้อมูล สามารถสอบถามเหล่านี้ได้ดังนี้:
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>
... และแก้ไขเช่น:
alter database default tablespace PHILTS;
alter database default temporary tablespace PHILTEMP;
ในการสอบถามค่าเริ่มต้นสำหรับผู้ใช้ที่กำหนดให้ใช้แบบสอบถามต่อไปนี้:
SQL> select USERNAME, DEFAULT_TABLESPACE, TEMPORARY_TABLESPACE
2 from DBA_USERS
3 where USERNAME='PHIL';
USERNAME DEFAULT_TABLESPACE TEMPORARY_TABLESPACE
------------------------------ ------------------------------ ------------------------------
PHIL USERS TEMP
SQL>
SELECT DEFAULT_TABLESPACE FROM DBA_USERS
เพื่อทราบพื้นที่ตารางเริ่มต้นสำหรับผู้ใช้แต่ละคน
ALTER DATABASE DEFAULT TABLESPACE othertablespace;
เพื่อเปลี่ยนพื้นที่ตารางเริ่มต้น โดยปกติหากมีบาง tablespaces ผู้ดูแลระบบควรตั้งค่า tablespace เริ่มต้นเมื่อสร้างผู้ใช้ใหม่เช่นCREATE USER myuser IDENTIFIED BY mypass DEFAULT TABLESPACE onetablespace