本章学习要点:
Oracle数据库介绍
表空间与数据库的关系
如何创建表空间
如何创建用户
如何创建和删除表
约束
-
Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的 适应高吞吐量的数据库解决方案。
表空间是数据库的逻辑组成部分
从物理上将:数据库数据存放在数据文件中
从逻辑上将:数据库则是存放在表空间中
表空间由一个或是多个数据文件组成
数据库的逻辑结构 介绍:
Oracle中逻辑结构包括表空间、段、区、块
说明:
数据库由表空间构成
而表空间又是由段构成
而段又是由区构成
而区又是由Oracle块构成
这样的一种结果,可以提高数据库的效率
系统中默认创建的几个表空间:
SYSTEM SYSAUX USERS UNDOTBS1 EXAMPLE TEMP其中SYSTEM、SYSAUX、TEMP、UNDO是必须的, 像USERS、EXAMPLE等表空间是可有可无的。
表空间的分类
永久表空间 存放永久性数据,如表,索引等。
临时表空间 不能存放永久性对象,用于保存数据库排序,分组时产生的临时数据。
UNDO表空间 保存数据修改前的镜象。
数据库,表空间, 数据文件, 表,数据之间的关系
数据库其实就是柜子,
柜中的抽屉是表空间,
抽屉中的文件夹是数据文件,
文件夹中的纸是表,
写在纸上的信息就是数据。
1)CREATE TABLESPACE username ——————- username为表空间名 2)DATAFILE ‘address’ ——————- address为数据文件的位置 文件以DBF为后缀的是数据文件 文件以CTL为后缀的是控制文件 文件以LOG为后缀的是控制文件 3)SIZE xxM ——————— 设置文件大小 4)AUTOEXTEND ON NEXT 32M MAXSIZE UNLIMITED ———-自动扩展32,最大值限制 5 )LOGGING ———————日志 6 )EXTENT MANAGEMENT LOCAL ————————管理本地 7)SEGMENT SPACE MANAGEMENT AUTO ——————自动管理 除了黑体字以外都是固定格式
例如: CREATE TABLESPACE user1_tablespace DATAFILE ‘F:\app\Administrator\oradata\orcl\my.DBF’ SIZE 100M AUTOEXTEND ON NEXT 32M MAXSIZE UNLIMITED LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO
1) CREATE USER name——————- name为用户名 2)IDENTIFIED BY password——————-password 为密码 3)DEFAULT TABLESPACE tablespace—————赋予表空间 4)TEMPORARY TABLESPACE tablespace————–赋予临时表空间(可写可不写)
例如 create user sqb identified by aaa default tablespace user1_tablespace
角色是具有名称的一组权限的组合 常用系统预定义角色 CONNECT: 连接 RESOURCE: 操作数据库 –DBA:数据库管理员角色,拥有管理数据库的最高权限
分配与撤销权限的语法 1)分配权限的语法 GRANT privileges or role TO user; 2)撤销权限的语法 REVOKE privileges or role FROM user;
语法 –删除表 drop table table_name;
–创建表 create table table_name; ( sno char(6) not null, sname varchar2(20) not null, sex char(2) , sage number(3,0) not null, sids numeric(18,0), sseat number(2,0), saddress varchar2(50) ) char(6) –>固定字符串 varchar2(20) –>可变字符串 number(5,2) –>数字(整数,小数点)
通过ALTER TABLE命令修改数据库表 –添加一列 –ALTER TABLE 表名 ADD (字段名 数据类型,字段名 数据类型); alter table student add(sdate date)
–修改列 – ALTER TABLE 表名 MODIFY (字段名 要修改数据类型); alter table student modify(sname varchar2(30))
–删除一列 – ALTER TABLE 表名 DROP COLUMN 字段名; alter table student drop column sdate
–删除多列 –ALTER TABLE 表名 DROP (字段名1,字段名2); alter table student drop (sids,sseat)
主键(Primary Key)约束:如 PK_stuNo(每一张表必须有主键) 唯一(Unique )约束:如 UQ_stuID 检查(Check )约束:如 CK_stuAge 外键(Foreign Key)约束:如 FK_stuNo
约束语法: ALTER TABLE 表名 ADD CONSTRAINT 约束名 约束类型 具体的约束说明