Қоғам oracle деректер қорын басқару жүйелері



Pdf көрінісі
бет14/23
Дата29.03.2023
өлшемі0,98 Mb.
#173212
1   ...   10   11   12   13   14   15   16   17   ...   23
Байланысты:
kt 2

- CREATE TABLESPACE, DROP TABLESPACE, ALTER TABLESPACE. 
Администратор басшылығынан команданың толық конструкциясын 
қарастырайық:
CREATE TABLESPACE -- 
(кестелік кеңістік
)
DATAFILE (файл_спецификациясы) (автокенейтілуі)-* 
Спецификациясы
DEFAULT [COMPRESS|NOCOMPRESS] STORAGE storage_clause 
MINIMUM EXTENT int {K|M} 
BLOCKSIZE int K 
LOGGING | NOLOGGING 
FORCE LOGGING 
ONLINE | OFFLINE 
PERMANENT | TEMPORARY 
EXTENT MANAGEMENT {DICTIONARY | 
LOCAL {AUTOALLOCATE | UNIFORM [SIZE int K | M]}} 
SEGMENT SPACE MANAGEMENT {MANUAL | AUTO} 
 
Oracle 10g-дан бастап, үлкен файлдары бар кестелік кеңістіктер пайда 
бола бастады (bigfile). Мұндай кестелік кеңістіктер бір деректер файлында 
немесе уақытша файлда салынады. Құрамында 2^32 деректер блогына дейін 
болуы мүмкін. Сондай-ақ кестелік кеңістіктер 8K деректер блогын пайдалана 
отырып, 32TB-қа дейінгі көлемді алуы мүмкін. 
Мұндай кестелік кеңістіктер өте үлкен деректер базасы үшін 
пайдаланылады. Мұндай кестелік кеңістікті құру үшін BIGFILE кілттік 
сөзімен CREATE сөйлемі орындалады. 
Немесе 
ALTER 
USER 
сөйлемін 
пайдалана 
отырып, 
бар 
пайдаланушының квотасын өзгерту. 
Ішкі сұрауларды пайдалану арқылы кесте құру
. Кестелер құрудың 
екінші әдісі – бұл 
AS
subquery
сөйлемін кестелер үшін де, сондай-ақ оны ішкі 
сұрауларға қайтатындай етіп (
subquery
) жолдармен толтыру үшін де 
пайдалану. 
Көрсетілімдер: 
1) Кесте берілген баған атауларымен жасалады, және оған SELECT 
командасы арқылы қайтарылатын жолдар қойылады. 
2) Бағанның анықтамасы тек бағанның атын және үнсіз келісім 
бойынша оның мәнін береді. 
3) Егер жаңа кесте үшін бағананың сипаттамасы берілген болса, онда 
олардың саны ішкі сұраудың (SELECT) таңдау тізімінің санына сәйкес келуі 
керек.
4) Егер бағаналардың сипаттамасы берілмеген болса, онда олардың аты 
ішкі сұраудағы бағаналардың атауы сияқты болады. 


25 
CREATE TABLE dept80 
AS
SELECT employee_id, last_name,
salary*12 ANNSAL, hire_date 
FROM employees 
WHERE department_id = 80; 
Кестелерді редактрлеу. 
Кестелерді редактрлеу үшін 
SQL
– ALTER TABLE конструкциясы 
қолданылады.
ALTER TABLE table ADD|MODIFY|DROP (column datatype [DEFAULT 
expr] [, column datatype]...) 
 
Белгілі бір шарттарды орындау үшін әр түрлі сөйлемдерді пайдалануға 
болады 
ON DELETE CASCADE| ON DELETE SET NULL.
ALTER TABLE employ ADD CONSTRAINT emp_mgr_fk
FOREIGN KEY(manager_id)
REFERENCES employ(employee_id)
 
ON DELETE CASCADE
 
 
Пайдаланушы кесені редактрлей алуы үшін, ол оның сұлбасында болуы 
керек, ал пайдаланушыда нысандық мүмкіндік ALTER TABLE болуы керек, 
кестелерді редактрлеу үшін басқа пайдаланушыларға ALTER ANY TABLE 
жүйелік мүмкіндігі керек болады. 
 
Кестеге бағанадар қосу.
Бар кестеге баған қосу үшін ALTER TABLE … ADD конструкциясы 
пайдаланылады. 
Келесі 
мысалда 
бар 
кестені 
өзгертеміз 
ALL_ORACLE.ADMIN_LOG, және COMMENTS бағанын қосамыз: 
ALTER TABLE ALL_ORACLE.ADMIN_LOG ADD (COMM VARCHAR2 (100)) 
 
Кестенің бағандарын жою.
Енді керек қылмайтын бағандарды жоюға болады. Бұл деректер 
қорындағы кеңістікті босатыдың жақсы амалы. Кестеден барлық бағандарды 
бірден өшіріп тастауға болмайды, сондай-ақ кестеден бағанды өшіру SYS 
пайдаланушысына тиесілі. 
Жою үшін ALTER TABLE … DROP COLUMN конструкциясы 
пайдаланылады. Нәтижесінде бағанның дискрипторы және бағанмен 
байлансты деректер жойылады. Бір конструкцияда бірден бірнеше бағанды 
өшіруге болады. Мысалдар мынаны көрсетті



Достарыңызбен бөлісу:
1   ...   10   11   12   13   14   15   16   17   ...   23




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет