您的位置:首页 > 数据库 > Oracle

Oracle深入浅出之数据管理

2012-03-22 01:20 351 查看
在这一章中我将和大家分享一下Oracle中的数据管理,对于数据管理的话我们可能就会对Oracle的表空间进行管理,Oracle表

的管理,对应就会有增、删、改操作,下面让我们来看看Oracle和其它数据有什么不同之处

表空间的概念:表空间是数据库最大的逻辑单元,当然一个Oracle数据库中至少包含一个表空间,也就是默认的SYSTEM的系统表空间

,每个表空间是由一个或多个数据文件组成,一个数据文件只能与一个表空间相关联

表空间的大小等于构成该表空间的所有数据文件大小之和,这里我突然想说下它们的结构上的区别:

从物理上来说,表空间对应数据文件,用来存放数据库数据的容器

从逻辑上来说,表空间将数据库对象有规律的组织起来,便于用于进行管理

系统表空间

当我们安装完Oracle数据库时,系统默认创建了表空间

System 主要用于存放管理员创建的对象

Users 主要存放一般用户创建的对象

如何创建表空间?

create tablespace sharme -sharme表空间名称

datafile 'f:/sharme/sharme.dbf' --表空间存放地址以及保存的数据文件

size 100m --初始大小

autoextend on; --自动增长打开

如果删除表空间?

drop talespace sharme including contents and datafiles;

--including contents and datafiles 表示删除表空间的内容和对于的数据文件,也可以直接删除

什么是用户默认表空间?

创建用户时,我们可以为该用户指定默认表空间,那么该用户今后创建的表等数据库对象,都会存放在这个默认表空间里,创建用户时

如果我们不指定默认表空间,那么系统默认认为是Users表空间

如何指定默认表空间?

create user 用户名 identified by 密码 default tablespace 表空间名;

Oracle的数据类型

字符数据类型

char:固定长度字符串,最大存放2000字节

varchar2:可变长度字符串,最大存放4000字节

long:可变长度字符串,最大可以存放4GB

数值数据类型number

number[(p,[s])]

--注解:p表示精度也就是一共几位,最高位为38

--S表示小数位数

日期时间类型

Date:一般数据库默认格式为12/5月/2012

Timestamp:这种数据类型精确度很高,精确到小数点后6位 如:05/20/2012 16:55:22 .000000

RAW数据类型

用于存放二进制数据,最多存放2000字节

Long RAW数据类型

用于存放可变的二进制数据,最多可以存放2GB

LOB大对象数据类型,最大可以存放4GB大小的数据

Clob字符型大对象类型 Blob二进制数据大对象,可以存放图像/声音

Oracle表管理

表示最基本的数据库对象,对于表管理我们需要了解如下:

create table sharme{

sid numerb(4),

sname varchar2(40),

saddress varchar2(100)

}

drop table sharme;//删除表

修改表

alter table 表名 add (列名 类型);--添加一列

alter table 表名 modify(列名 类型);--修改字段的长度

alter table 表名 drop column 列名;--删除一列

rename 修表名 to 新表名 ;--修改表名

desc 表名;--看表结构,但是这个命令局限在命名窗口中

为表添加约束

约束定义:constraint,为了保证数据的完整性,避免非法数据

primary key --主键约束

foreign key --外键约束

check --检查约束 null| not null --是否为空 default --默认值

如何添加约束?

alter table 表名

add constraint 约束名 约束类型 约束添加

如何删除约束?

alter table 表名

drop constraint 约束名‘

如何利用现有表创建新表?

create table 表名 as select * from emp; --查询emp信息创建一个新表,但是复制仅仅复制表的结构,不复制表的约束

数据管理删除

delete from 表名 where 条件

truncate table 表名

比较这两者的区别:

1.delete删除数据,会记录到日志文件,可以通过事物控制语句恢复数据

2.truncate删除数据,不会记录到日志文件,不能恢复,但是执行的效率相对于delete要快一些

事物控制语言

事务是最小的工作单元,作为一个整体工作,保证事务的整体成功或失败称为事务控制

在Oracle中用于控制事务的语句有:

commit --提交事务

rollback [to savepoint] --回滚事务

savepoint --设置保存点位置

介绍下SQL:SQL是结构化查询语言

SQL支持如下类别的命令:

DDL(数据定义语言)Data Definition Language

用于改变数据库结构,创建,更改和删除数据库对象像create/alter/drop

DML (数据操作语言) Data ManipulationLanguage

用于检索,插入和修改数据:如insert.delete/update/select

TCL(事务控制语言) commit/rollback/savepoint

DCL(数据控制语言) 为用户提供全新控制命令 grant.revoke
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: