oracle 创建表空间 pcincrease,oracle建表空间

在创建用户之前,先要创建表空间:

其格式为:格式:  create tablespace表间名datafile '数据文件名' size表空间大小;

如:

SQL> create tablespace news_tablespace datafile 'F:/oracle/product/10.1.0/oradata/news/news_data.dbf' size 500M;

其中'news_tablespace'是你自定义的表空间名称,可以任意取名;'F:/oracle/product/10.1.0/oradata/news/news_data.dbf'是数据文件的存放位置,'news_data.dbf'文件名也是任意取;'size 500M'是指定该数据文件的大小,也就是表空间的大小。

现在建好了名为'news_tablespace'的表空间,下面就可以创建用户了:

其格式为:格式:  create user用户名identified by密码default tablespace表空间表;

如:

SQL> create user news identified by news default tablespace news_tablespace;

默认表空间'default tablespace'使用上面创建的表空间。

接着授权给新建的用户:

SQL> grant connect,resource to news;  --表示把connect,resource权限授予news用户

SQL> grant dba to news;  --表示把dba权限授予给news用户

授权成功。

ok!数据库用户创建完成,现在你就可以使用该用户创建数据表了!

1.建表空间

create tablespace hoteldata datafile 'D:/java/Oracle/product/10.1.0/oradata/zznorcl/hoteldata.dbf'size 200m autoextend on next 10m maxsize unlimited;

2.建用户

create user hotel identified by hotel default tablespace hoteldata account unlock;//identified by后面的是密码,前面的是用户名

3.用户授权

grant resource,connect,RECOVERY_CATALOG_OWNER to hotel ;

grant create table to hotel;

alter user hotel quota unlimited ON OSDB;

alter user hotel default tablespace hoteldata;

4.删除表空间

DROP TABLESPACE hoteldata INCLUDING CONTENTS AND DATAFILES;

5.删除用户

DROP USER hotel CASCADE

6.删除表的注意事项

在删除一个表中的全部数据时,须使用TRUNCATE TABLE表名;因为用DROP TABLE,DELETE * FROM表名时,TABLESPACE表空间该表的占用空间并未释放,反复几次DROP,DELETE操作后,该TABLESPACE上百兆的空间就被耗光了。

oracle sqlplus脚本建库总结(原创)

******************************************************************/

--查询表空间参数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.ora1alter tablespace mytesttablespace add datafile 'c:/test/test.ora1' size 5M;

/******************************************************************/

--修改表空间数据库文件属性,myoracle为sid

--将test.ora1数据库文件改为3M,其中resize可以是ONLINE, OFFLINE, RESIZE, AUTOEXTEND或END/DROPalter 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.](

--      [default ][,]

--      .......

--      )TABLESPACE TABLESPACE_NAME;

--schema:表示所属的用户名称或模式名称亦即方案--table_name:表示新建表的名称--column_name:表示字段名称--data type:表示字段的数据类型--default :表示字段的默认值--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' ,''  );

/******************************************************************/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值