oracle存储结构和建表

目录

一.数据库的存储结构

二.创建表空间和用户

三.建表语法


一.数据库的存储结构

数据块:是oracle数据库存储数据的最小存储空间,它是操作系统存储单元的整数位
      8k,16k,32k
数据区:数据区是由若干个数据块组成,oracle中建一张表,系统默认给他分配的存储空间是一个数据区

数据段:数据段由若干个数据区组成。

表空间:是由数据段组成,它里面存放着数据库的所有对象(表、视图、序列、等等)

二.创建表空间和用户

语法如下:

create tablespace tablespace_name datafile '表空间文件路径' 
size 1G autoextend on next 100M maxsize unlimited;

create tablespace tablespace_test 
datafile 'D:\app\Administrator\oradata\orcl\test01.dbf'
size 100M autoextend on next 100M maxsize unlimited;
1g=10240m

create tablespace:创建表空间关键字
tablespace_name:表空间名称
datafile:指定表空间文件(一般指向oracle安装根目录下oradata/数据库实例名/.dbf )
size 1G:指定表空间文件的初始大小,大小单位可以是G、M等
autoextend on next 100M:autoextend 表示表空间大小自动扩展, on next 100M 指定每次表空间满了之间扩展的大小
maxsize unlimited: maxsize 指定表空间的最大存储值,unlimited 表示不限制表空间的最大值(也就是只要硬盘不满,表空间就可以一直扩展)

修改表空间:(了解内容)
 

alter tablespace tablespace_name autoextend on next 100M maxsize 100G;

创建一个test1的表空间(必须使用管理员用户system, sys )
 

create tablespace test1 datafile 'D:\app\test1\oradata\orcl\test1data.dbf' 
size 1G autoextend on next 100M maxsize unlimited;


创建临时表空间语法:
 

create temporary tablespace tablespace_name tempfile '表空间文件路径' 
size 1G autoextend on next 100M maxsize unlimited;

temporary:表明创建的表空间是临时表空间
tempfile:指定临时表空间文件

创建一个test1temp的临时表空间(用管理员用户)
 

create temporary tablespace test1temp tempfile 'D:\app\test1\oradata\orcl\test1temp.dbf' 
size 50M autoextend on next 50M maxsize unlimited;


创建用户语法:

create user user_name default tablespace tablespace_name 
temporary tablespace temptablespace_name identified by password;


create user:创建用户关键字
user_name:用户名
default tablespace tablespace_name:指定用户的默认表空间 tablesapce_name表空间名(如果省略默认使用users表空间)
temporary tablespace temptablespace_name:指定用户的默认临时表空间,temptablespace_name临时表空间名(如果省略默认使用temp表空间)
identified by password:identified by 指定用户的密码,password用户密码

创建一个test1用户

create user test1 
identified by test1
default tablespace test1 
temporary tablespace test1temp ;

修改用户

alter user user_name 
default tablespace tablespace_name 
temporary tablespace temptablespace_name 
identified by password;

权限
权限指的是执行特定命令或访问数据库对象的权利
权限有两种类型,系统权限和对象权限
系统权限允许用户执行某些数据库操作,如创建表就是一个系统权限
对象权限允许用户对数据库对象(如表、视图、序列等)执行特定操作
GRANT 命令可用于为用户分配权限或角色 
系统权限如:
    GRANT CREATE SESSION  TO  test1; --此系统权限允许用户连接到数据库上
    GRANT CREATE TABLE  TO test1; --此系统权限允许用户创建表
    GRANT UNLIMITED TABLESPACE TO test1; --此系统权限允许test1用户任意使用表空间

对象权限如:
    GRANT SELECT ON SCOTT.EMP TO test1; --允许用户查询 EMP 表的记录
    GRANT UPDATE ON SCOTT.EMP TO test1; --允许用户更新 EMP 表中的记录
    GRANT ALL ON SCOTT.EMP TO test1;  --允许用户插入、删除、更新和查询 EMP 表中的记录


角色管理
    角色是一组相关权限的组合,可以将权限授予角色,
    再把角色授予用户,以简化权限管理。
GRANT CONNECT TO test1; --CONNECT角色 允许用户连接至数据库,并创建数据库表

GRANT RESOURCE TO test1;  --RESOURCE角色允许用户使用数据库中的存储空间

GRANT CREATE SESSION TO test1; --此系统权限允许用户连接到数据库上

grant CREATE MATERIALIZED VIEW, 
CREATE PROCEDURE,CREATE SEQUENCE,
CREATE SESSION CREATE SYNONYM,CREATE TABLE,CREATE TRIGGER,
CREATE VIEW,SELECT ANY TABLE, UPDATE ANY TABLE to user_name 

查看角色(只能查看登陆用户拥有的角色)所包含的权限
select * from role_sys_privs;

--创建角色
create role role1;

--授权给角色
grant  create  and table 
, create procedure  
to role1 ;

--授权角色给用户
grant role1 to uesr1;

给用户赋权限
connect,resource

grant --赋权
connect    --链接权限
,resource  --收回权限
to test1;  --给到用户下

revoke 收回权限

删除表空间和用户
drop tablespace tablespace_name;

drop --删除表数据及表结构;不可回滚;
truncate --清空表数据 删除水位线,不可回滚;
delete --删除表数据,可回滚;执行效率慢;

drop user user_name;

三.建表语法

create table 表名(
   列名 数据类型 约束 默认值,--约束、默认值都是可以省略的
   列名 数据类型 约束 默认值,
   列名 数据类型 约束 默认值,
   ...
   表级约束              --可选
)tablespace 表空间名;

表名、列名、表空间名等都叫做标识符,
它一般以字母开头,可以有_、数字、$等,长度不能超过30个英文字符;

tablespace 表空间名:
是可省略的,
默认表会保存到用户的默认表空间中,
也可以加上,表示指定将表存入某个表空间;

create table persion(
   id number(11),
   name varchar2(20),
   age number(3),
   sex number(1),
   birthday date
);

select * from persion;

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值