附錄C Oracle SQL的常用命令語法
在操作數據庫時,經常需要聯機為SYSDBA,其命令語法為CONNECT SYS/password AS SYSDBA,下麵列舉出Oracle SQL的常用命令語法,以供讀者參考。
C-1 建立數據庫的命令語法
CREATE DATABASE name
CONTROLFILE REUSE
LOGFILE GROUP n (filespec)
MAXLOGFILES n
MAXLOGMEMBERS n
MAXLOGHISTORY n
MAXDATAFILES n
MAXINSTANCES n
ARCHIVELOG|NOARCHIVELOG
CHARACTER_SET charset
NATIONAL_CHARACTER_SET charset
DATAFILE (filespec) autoextend_clause
Extent_managemnet_clause
Default_temp_tablespace_clasue
UNDO_tablespace_clause
SET STANDBY DATABASE clause
Set_time_zone_clause
autoextend_clause;
AUTOEXTEND ON|OFF NEXT n K|M MAXSIZE n|UNLIMITED K|M
Filespec:
'full path file name|logical|system link name' SIZE n K|M REUSE
extent_management_clause:
EXTENT MANAGEMENT
DIRECTORY
LOCAL
AUTOALLOCATE
UNIFORM
SIZE n [K|M]
Default_temp_tablespace_clause:
DEFAULT TEMPORARY TABLESPACE tablespace [TEMPFILE]
Temp_tablespace_extent_clause
UNDO_tablespace_cluae:
UNDO TABLESPACE tablespace [DATAFILE file_space_clauses]
範例:
CREATE DATABASE myhrdb
USER SYS IDENTIFIED BY hr6588
USER SYSTEM IDENTIFIED BY hr0001
LOGFILE GROUP 1 ('/u01/oracle/oradata/myhrdb/redo01.log') SIZE 100M,
GROUP 2 ('/u01/oracle/oradata/myhrdb/redo02.log') SIZE 100M,
GROUP 3 ('/u01/oracle/oradata/myhrdb/redo03.log') SIZE 100M
MAXLOGFILES 5
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 100
MAXINSTANCES 1
CHARACTER SET US7ASCII
NATIONAL CHARACTER SET AL16UTF16
DATAFILE '/u01/oracle/oradata/myhrdb/system01.dbf' SIZE 325M REUSE
EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE '/u01/oracle/oradata/myhrdb/sysaux01.dbf' SIZE 325M REUSE
DEFAULT TABLESPACE tbs_1
DEFAULT TEMPORARY TABLESPACE tempts1
TEMPFILE '/u01/oracle/oradata/myhrdb/temp01.dbf'
SIZE 20M REUSE
UNDO TABLESPACE undotbs
DATAFILE '/u01/oracle/oradata/myhrdb/undotbs01.dbf'
SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
C-2 啟動數據庫的命令語法
STARTUP [RESTRICTED] [FORCE] [PFILE=filename] [SPFILE=filename]
[EXCLUSIVE or PARALLEL]
[MOUNT or OPEN] dbname
[NOMOUNT]
[RECOVER]
C-3 關閉數據庫的命令語法
SHUTDOWN [NORMAL] [IMMEDIATE] [ABORT] [TRANSACTINAL]
C-4 刪除數據庫的命令語法
DROP DATABASE;
C-5 建立表格空間的命令語法
CREATE [UNDO|TEMPORARY] TABLESPACE tablespace
DATAFILE|TEMPFILE 'file_space'
[MINIMUM EXTENT n [K|M]]
[AUTOEXTEND
OFF
ON NEXT n K|M MAXSIZE UNLIMITED|n [K|M]]
[LOGGING|NOLOGGING]
[ONLINE|OFFLINE]
[DEFAULT (storage_clause)] (N/A If TEMPORARY above)
[PERMANENT|TEMPORARY] (N/A If TEMPORARY above)
[EXTENT MANAGEMENT
DICTIONARY (Must be LOCAL for TEMPFILE)
LOCAL
AUTOALLOCATE
UNIFORM [SIZE n [K|M]]
[SEGMENT SPACE MANAGEMENT MAUNAL|AUTO]
範例:
CREATE TABLESPACE users LOGGING
DATAFILE '/u01/oracle/oradata/myhrdb/users01.dbf'
SIZE 25M REUSE AUTOEXTEND ON NEXT 1280K MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL;
-- create a tablespace for indexes, separate from user tablespace
CREATE TABLESPACE indx LOGGING
DATAFILE '/u01/oracle/oradata/myhrdb/indx01.dbf'
SIZE 25M REUSE AUTOEXTEND ON NEXT 1280K MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL;
C-6 更改表格空間的命令語法
ALTER TABLESPACE tablespace
[LOGGING|NOLOGGING]
[ADD DATAFILE|TEMPFILE file_space [autoextendclause]]
[RENAME DATAFILE 'from_file_space' TO 'to_file_spec']
[COALESCE]
[DEFAULT STORAGE storage_cluase]
[MINIMUM EXTENT n K|M]