关于oracle数据库的简单的介绍与操作
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
select sysdate from dual;
select username from all_users;
desc user_tables;
Oracle简介
关系型数据库管理系统, RDBMS
最早在上世纪70年代由IBM的研究员 Codd 博士提出
到80年代,所有的DB产品都是关系型数据库了。
一直到今天。
未来数据库的发展可能是 分布式文件系统、基于
“云(cloud)”存储的。
Oracle体系架构
ORACLE服务是一个基于C/S架构的应用。
也就是ORACLE服务启动后,要有客户端来连接。
PGA,Program Global Area,程序全局区,
每个客户端连接上ORACLE服务后,由服务端来
维护一个PGA,PGA是独享的。
SGA,System Global Area,系统全局区,它是所有
客户端共享的。
数据库实例(Instance):它代表ORACLE服务进程,
一个实例在某一时刻只能管理一个数据库
基本概念:
RDBMS,关系型数据库管理系统,是一套软件。
DB,数据库,也就是磁盘文件,它由RDBMS来管理。
物理结构
分为数据文件、参数文件、密码文件、日志文件、
控制文件、重做日志文件等
逻辑结构
表空间(tablespace)、段(segment)、
区(extent)、块(block)
--
SQL: Structure Query Language 结构化查询语句
这个规范也是由codd博士提出,它的目的是用来
操作RDMBS。
目前,基本上所有主流的RDMBS产品都实现了
SQL规范,也就是支持SQL语句。
SQL规范目前所遵守的是SQL99,早期的是SQL92
所以,SQL是跨RDBMS产品的。
RDBMS产品有:
ORACLE
DB2
SQL SERVER
MYSQL 中小型的企业数据
SYBASE
SQLITE 嵌入式设备中使用,如手机
...
SQL 与 SQL*PLUS 与PL/SQL 的区别
SQL 是结构化查询语言,是通用的。
SQL*PLUS 是ORACLE的一个客户端。
PL/SQL是基于SQL扩展而来的一种数据库端的
编程语言。
SQL 是第四代语言,它的特点:
只管做什么,不管怎么做。
Oracle安装要求
1.不要有空格的目录
2.不要含有中文的目录
Oracle客户端软件
1.sqlplus, 这个是ORACLE自带的客户端软件,
当然,也可以单独下载。
2.plsql developer, 这个是第三方提供的
可视化SQL开发环境。
3.sql developer,此工具由ORACLE官方提供,
免费的。
...
Oracle的目录结构:
开始Oracle SQL之旅
首先认识一下 sqlplus
注:
Oracle数据库中可以建立多个用户,而系统自带的
sys与system等用户,这2个用户都是系统管理用户,
不建议做为学习使用。
1.创建用户
create user 用户名 identified by 密码;
如:
create user dt1310 identified by dt1310;
2.授权
grant 权限|角色 to 用户名;
ORACLE权限分为:对象权限与系统权限
角色 是指权限的集合,ORACLE系统自带如下3个角色:
connect 主要是建立会话(session)
resource 主要是创建表、序列等 对象的
dba 管理
员角色,很重要,不能轻易赋与
所以,新建的用户只需要授与connect与resource
两个角色即可。
如:
grant connect,resource to dt1310;
3.切换用户
方式1:退出,用其它用户重新登录。
方式2:conn[ect] 用户名/密码
4.理解SQLPLUS指令与SQL标准命令
SQL标准命令分为如下几类:
A. DQL, Data Query Language, 数据查询语句,
只有一条命令:select 命令
B. DML, Data Manipulate Language, 数据操纵语句,
有三条命令:
insert 命令
update 命令
delete 命令
C. DDL, Data Definition Language,数据定义语句,
有:
create 命令
drop 命令
alter 命令
rename to 命令
comment on 命令
truncate 命令
...
D.事务(Transaction)语句,DTL
有:
commit 命令
rollback 命令
savepoint 命令
E.DCL, Data Control Language,数据控制语句
有:
grant 命令
revoke 命令
...
--
SQLPLUS指令有:
help 或 ? 打开SQLPLUS 的帮助文档
show 指令,用来查看当前登录用户
conn 指令, 用来切换用户
clear screen 指令, 清屏
desc 表名 指令, 用来描述表的结构
...
--
表空间(tablespace)
它是ORACLE 的逻辑结构,它真正对应的就是
数据文件(xxx.dbf),一般来讲,ORACLE安装好后,
都会自带以下几个表空间:
system -- system.dbf
sysaux
temp
undo
users 主要是存放用户的表
...
--
创建用户时指定表空间
create user 用户名 identifier by 密码
default tablespace 表空间名
temporary tablespace 临时表空间名
--
如何在sqlplus中执行sql脚本文件
1.利用 @sql文件
2.利用 start sql文件
--
查看当前用户下有多少张表
select table_name from user_tables;
查看表的结构
desc 表名;
如:
desc s_emp
--
实验:
创建一个用户1.create user dt1311 identified by dt1311;
default tablespace users;
temporary tablespace temp;
2.create user dt1311 identified by dt1311;
授权 grant connect,resource to dt1310;
..:connect dt1311/dt1311;
执行 1.oracle_cn.sql脚本 (:start/@)
2......
查看表名select table_name from user_tables;
查看表结构desc s_emp;
connnect system/5958;
删除用户drop user dt1311 cascade;