******************************************************************/
--查询表空间参数
select tablespace_name,min_extents,max_extents,pct_increase,status from
dba_tablespaces;
--查询数据文件信息
--autoextensible数据库已满后是否自动扩展
select tablespace_name,bytes,autoextensible,file_name from dba_data_files;
/******************************************************************/
--创建表空间
-- 一般信息
-- DATAFILE:数据文件目录
-- 存储
--
AUTOEXTEND:数据文件满后自动扩展
--
ON NEXT:增量
--
MAXSIZE UNLIMITED:最大容量无限制
-- SIZE:文件大小
-- 存储
-- 启用事件记录:LOGGING为生成从做日志并可恢复,NOLOGGING为快速更新不生成日志且不可恢复
-- MANAGEMENT LOCAL:本地管理
-- 缺省:自动分配
-- UNIFORM
SIZE:统一分配
-- MANAGEMENT DICTIONARY:在字典中管理
-- DEFAULT
STORAGE:覆盖默认区值
--
INITIAL:初始大小
--
NEXT :下一个大小
--
MINEXTENTS:最小数量
--
MAXEXTENTS UNLIMITED :最大数量不限制
--
PCTINCREASE:增量,单位"%"
--
MINIMUM EXTENT:最小区大小
CREATE TABLESPACE
"TEST"
NOLOGGING
DATAFILE 'G:/ORACLE/ORADATA/MYORACLE/TEST.ora' SIZE 5M REUSE
AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED EXTENT
MANAGEMENT LOCAL UNIFORM SIZE 12K;
--最好写成相对路径,免得出错
CREATE TABLESPACE "TEST"
NOLOGGING
DATAFILE '../DATABASE/TEST.ora' SIZE 5M REUSE--建议用'../oradata/TEST.ora'
AUTOEXTEND ON
NEXT 1M
MAXSIZE UNLIMITED EXTENT
MANAGEMENT LOCAL UNIFORM SIZE 12K;
CREATE TABLESPACE "TEST"
LOGGING
DATAFILE 'G:/ORACLE/ORADATA/MYORACLE/TEST.ora' SIZE 5M EXTENT
MANAGEMENT DICTIONARY DEFAULT STORAGE ( INITIAL 1K NEXT 2K
MINEXTENTS 5 MAXEXTENTS 67 PCTINCREASE 4 ) MINIMUM EXTENT
3K;
/******************************************************************/
--增加表空间, 注意这里test.ora1不能与原表空间文件名称相同
--添加一个新的大小为5M数据库文件test.ora1
alter tablespace mytesttablespace
add datafile 'c:/test/test.ora1' size 5M;
/******************************************************************/
--修改表空间数据库文件属性,myoracle为sid
--将test.ora1数据库文件改为3M,其中resize可以是ONLINE, OFFLINE, RESIZE, AUTOEXTEND 或
END/DROP
alter database myoracle datafile
'c:/test/test.ora1' resize 3M;
alter database myoracle datafile '$ORACLE_HOME/oradata/undo102.dbf' autoextend
on next 10m maxsize 500M;
/******************************************************************/
/*删除表空间
语法:drop tablespace tablespace_name including contents
and datafiles;
删除表空间时要系统不会删除表空间数据库文件,要彻底删除要手动删除
*/
drop tablespace mytesttablespace
including contents and datafiles;
/******************************************************************/
--创建用户
--命令:
--CREATE USER 名称 IDENTIFIED BY 口令 DEFAULT TABLESPACE "默认表空间名"
TEMPORARY TABLESPACE "TEMP" ACCOUNT UNLOCK
-- 一般属性
-- DEFAULT TABLESPACE :默认表空间名
-- TEMPORARY TABLESPACE :临时表空间名,默认TEMP
-- ACCOUNT :用户状态,默认UNLOCK 未锁定;LOCK 锁定
CREATE USER
"TEST" PROFILE "DEFAULT"
IDENTIFIED BY "test" DEFAULT TABLESPACE
"TEST"
TEMPORARY TABLESPACE "TEMP"
ACCOUNT UNLOCK;
--可以写成
CREATE USER
"TEST" PROFILE "DEFAULT"
IDENTIFIED BY "test" DEFAULT TABLESPACE
"TEST" ;
/******************************************************************/
--用户授权
--grant "connect,resource,dba" to "someuser" with admin
option;
-- WITH ADMIN OPTION :管理选项
--授予usertest DBA权限
grant dba to "usertest"
with admin option;
--取消授权
--REVOKE "RESOURCE" FROM "SCOTT";
/******************************************************************/
--建表
--在usertest方案下建表,注意表名不能用关键字,否则报错ORA-00903: 表名无效
--语法:
-- create table [schema.]<table_name>(
-- <column_name><data type>[default
<expression>]<constraint>[,]
-- .......
-- )TABLESPACE TABLESPACE_NAME;
--schema:表示所属的用户名称或模式名称亦即方案
--table_name:表示新建表的名称
--column_name:表示字段名称
--data type:表示字段的数据类型
--default <expression>:表示字段的默认值
--constraint:表示约束条件
--TABLESPACE_NAME:所用表空间
CREATE TABLE
"TEST"."TEST" (
"ID" NUMBER(10) DEFAULT 0 NOT NULL,
"NAME" VARCHAR2(20) NOT NULL,
"INFO" VARCHAR2(1000),
PRIMARY KEY("ID")
)TABLESPACE "TEST" ;
--也可以写成
CREATE TABLE
"TEST"."TEST" (
"ID" NUMBER(10) DEFAULT 0 PRIMARY KEY,
"NAME" VARCHAR2(20) NOT NULL,
"INFO" VARCHAR2(1000)
)TABLESPACE "TEST" ;
/******************************************************************/
--插入数据
--语法:
-- INSERT INTO tablename (column1,column2,…) VALUES
(expression1,expression2,…);
INSERT INTO
"TEST"."TEST" ("ID" ,"NAME"
,"INFO" ) VALUES (1 ,'testname' ,'' );
--也可以写成
INSERT INTO
"TEST"."TEST" VALUES (1 ,'testname' ,'' );
/******************************************************************/