数据库 day60,61 Oracle入门,单行函数,多表查询,子查询,事物处理,约束,rownum分页,视图,序列,索引
Posted 飛白
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库 day60,61 Oracle入门,单行函数,多表查询,子查询,事物处理,约束,rownum分页,视图,序列,索引相关的知识,希望对你有一定的参考价值。
1. oracle介绍
ORACLE数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/S体系结构的数据库之一。比如SilverStream就是基于数据库的一种中间件。ORACLE数据库是目前世界上使用最为广泛的数据库管理系统,作为一个通用的数据库系统,它具有完整的数据管理功能;作为一个关系数据库,它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。但它的所有知识,只要在一种机型上学习了ORACLE知识,便能在各种类型的机器上使用它。
2. oracle10g安装
解压oracle数据库安装包,如果是win7或者win8系统右键点击setup.exe选择兼容性,以xp方式,并且以管理员方式运行,以及其他所有用户都按着此规则
1. 并双击解压目录下的setup.exe
2. 输入口令和确认口令,如:password,点击下一步,出现如下进度条,
注:此口令即是管理员密码。
3. 检查先决条件,选中选择框
4. 点击“下一步”,出现“概要”界面,点击“安装”。
5. 出现安装进度条,等待安装完成:
6. 安装完成后,自动运行配置向导,等待其完成:
7. 完成后,出现“口令管理”界面,点击“口令管理”,:
8. 将SCOTT和HR用户的沟去掉(解锁这两个账户),点击“确定”:
9. 回到“口令管理”界面,点击“确定”:
10. 安装结束,点击“退出”。
3. PLSQLDeveloper安装
最后会提示输入序列号,打开plsql-sn.txt复制序列号,输入即可。
重要提示:不要把plsql developer安装在有括号的目录下,否则会出现连不上数据库的情况,安装目录也不要出现中文。
Plsql developer是最好用也是公司里面大量使用的数据库图形化工具,功能十分强大,在开发人员中广受欢迎,基本上是使用oracle数据库的必备神器。Oracle支持命令行方式操作,在实际的开发中很少使用命令行,绝大多数使用图形化的工具Plsql developer
4. PowerDesigner安装
PowerDesigner是数据库模型设计的工具,功能十分强大,不仅能设计数据库模型,还能设计各种UML建模的图形。
5. oracle基本概念
体系结构图
数据库:
Oracle数据库是数据的物理存储。这就包括(数据文件ORA或者DBF、控制文件、联机日志、参数文件)。其实Oracle数据库的概念和其它数据库不一样,这里的数据库是一个操作系统只有一个库。可以看作是Oracle就只有一个大数据库。
实例:
一个Oracle实例(Oracle Instance)有一系列的后台进程(Backguound Processes)和内存结构(Memory Structures)组成。一个数据库可以有n个实例。
用户:
用户是在实例下建立的。不同实例可以建相同名字的用户。
表空间:
表空间是Oracle对物理数据库上相关数据文件(ORA或者DBF文件)的逻辑映射。一个数据库在逻辑上被划分成一到若干个表空间,每个表空间包含了在逻辑上相关联的一组结构。每个数据库至少有一个表空间(称之为system表空间)。
每个表空间由同一磁盘上的一个或多个文件组成,这些文件叫数据文件(datafile)。一个数据文件只能属于一个表空间。
数据文件(dbf、ora):
数据文件是数据库的物理存储单位。数据库的数据是存储在表空间中的,真正是在某一个或者多个数据文件中。而一个表空间可以由一个或多个数据文件组成,一个数据文件只能属于一个表空间。一旦数据文件被加入到某个表空间后,就不能删除这个文件,如果要删除某个数据文件,只能删除其所属于的表空间才行。
注: 表的数据,是由用户放入某一个表空间的,而这个表空间会随机把这些表数据放到一个或者多个数据文件中。
由于oracle的数据库不是普通的概念,oracle是由用户和表空间对数据进行管理和存放的。但是表不是有表空间去查询的,而是由用户去查的。因为不同用户可以在同一个表空间建立同一个名字的表!这里区分就是用户了!
mysql与oracle对比图
oracle
6. 命令行常用操作
1. 登录
运行cmd进入命令行
Sqlplus 用户名/密码 [as sysdba]
如果是超级管理员需要在用户名/密码后面加上 as sysdba,是以系统管理员的身份来登录的,
如果是普通用户不需要assysdba
2.查看当前连接数据库的用户
使用show user查看当前的用户
3. 用户的切换
在登录的状态下输入:conn用户名/密码 [as sysdba]
4. 查看用户下的表
为了防止命令行中数据展示表格错乱的情况可以设计行宽和列宽
Set linesize 300; 每行展示300个字符
Col列名 for a[数字],某一列占几个字符
在用户登录的情况下输入:select* from tab;
查看表中的数据
Col ename for a8
Col mgr for 9999
Col sal for 9999
Select * from emp;
如果使用dba用户登录查询该表无法查看到,因为sys用户下没有这个emp表
由于超级管理员的权限很大可以查看Scott用户下的表
可以使用select *from [用户名].[表名] 来查看某用户下的表的数据
5. 查看表的结构
Desc 表名
Number(4) 最大长度为4为的数值类型
Varchar2(10) 最大长度为10的字符串,
varchar2 用于存储可变长度的字符串,.
varchar2 把所有字符都占两字节处理(一般情况下),
varchar只对汉字和全角等字符占两字节,数字,英文字符等都是一个字节,
VARCHAR2把空串等同于null处理,而varchar仍按照空串处理;建议在oracle中使用varchar2
Number(7,2) 数值类型整数位占5位,小数位占2位,一共7位。
Date 时间类型
7.Scott用户下的表结构
8. sql
以上是关于数据库 day60,61 Oracle入门,单行函数,多表查询,子查询,事物处理,约束,rownum分页,视图,序列,索引的主要内容,如果未能解决你的问题,请参考以下文章