目录
Oracle的安装
1、同时选中两个压缩包解压到同一目录,即会出现"database",然后单击解压目录下的"setup.exe"文件,如下图所示:
2、执行安装程序后会出现如下的命令提示行。
3、等待片刻之后就会出现启动画。
4、稍微等待一会,就会出现如下图所示的安装画面,取消下图所示的选中,然后单击"下一步"继续,同时在出现的信息提示框单击"是"继续。
5、之后就会出现安装选项对话框,默认点击"下一步"继续
6、之后会出现安装类型对话框,点击"下一步"继续,如果奔出你是安装在Windows Server上的话就选择服务器类。
7、然后就是安装配置,在这要注意的是:管理口令的格式要至少包含一个大写字母,一个小写字母和一个数字,长度8位以上,否则会提示警告,正确输入后点击"下一步"继续。
8、之后会出现"先决条件检查"对话框,选中"全部忽略"并单击"下一步"以继续。(也有可能会直接跳过,不用担心)
9、之后点击"完成"就开始安装了
10、安装画面如下图所示:
11、 当上述进度到达100%时会出现线面的对话框,请耐心等待它完成,不要捉急。
之后弹出口令管理窗口,进行口令设置
将sys和system的用户密码重新设置为sys和system
将scott用户密码设置为tiger
记得将这三个用户进行解锁!!! “是否锁定账户”那个勾要取消掉
- 然后再弹出的确认对话框点击"确定"这时会回到主界面然后再单击"关闭"完成安装。
- 至此,Oracle11g R2已经安装完成,可以打开sqlplus进行测试 见录屏最后面!
- 关于O r a c l e的卸载,参考以下网址:oracle 11g如何完全卸载-百度经验
要细心
Oracle的组成结构
(1)数据库
-
①数据文件 ORA 或者 DBF
-
②控制文件
-
③联机日 志
-
④参数文件
🖤Oracle 数据库是数据的物理存储
🖤其实 Oracle 数据库的概念和其它数据库不一样,这里的数据库是一个操作系统 只有一个库。可以看作是 Oracle 就只有一个大数据库
(2)实例 【Instance】
-
一个 Oracle 实例有一系列的后台进程(Backguound Processes)和内存结构 (Memory Structures)组成。一个数据库可以有 n 个实例。
(3)用户
-
用户是在实例下建立的。不同实例可以建相同名字的用户
(4)表空间--------sqlserver中的数据库
-
表空间是 Oracle 对物理数据库上相关数据文件(ORA 或者 DBF 文件)的逻辑映射。一个数 据库在逻辑上被划分成一到若干个表空间,每个表空间包含了在逻辑上相关联的一组结构。每 个数据库至少有一个表空间(称之为 system 表空间)。
-
每个表空间由同一磁盘上的一个或多个文件组成,这些文件叫数据文件(datafile)。一个数据文件只能属于一个表空间。
(5)数据文件(dbf、ora)
-
数据文件是数据库的物理存储单位。
-
数据库的数据是存储在表空间中的,真正是在某一个 或者多个数据文件中。而一个表空间可以由一个或多个数据文件组成,一个数据文件只能属于 一个表空间。一旦数据文件被加入到某个表空间后,就不能删除这个文件,如果要删除某个数 据文件,只能删除其所属于的表空间才行
-
表的数据,是有用户放入某一个表空间的,而这个表空间会随机把这些表数据放到 一个或者多个数据文件中。
-
由于Oracle的数据库不是普通的概念,Oracle是有用户和表空间对数据进行管理和存放的。 但是表不是有表空间去查询的,而是由用户去查的。因为不同用户可以在同一个表空间建立同 一个名字的表!这里区分就是用户了
oracle的相关操作
(1)Oracle服务启动与关闭
通过cmd命令窗口(注意:需要用管理员身份打开dos窗口),使用命令的方式启动和关闭oracle服务
启动服务
net start OracleOraDb11g_home1TNSListener
net start OracleServiceORCL
停止服务
net stop OracleOraDb11g_home1TNSListener
net stop OracleServiceORCL
(2)Oracle账户介绍
sys用户
是超级管理员,具有最高权限,具有sysdba,有create database权限,默认的密码change_on_install。(安装时设定.用户手动给的),输入口令:sys as sysdba。
system用户
是普通管理员,权限也很大.具有sysoper角色,没有create database。默认密码是manager。一般讲,对数据库维护,使用system永固登录就可以登录就可以。
普通用户
用户名:scott; 密码:tiger(默认)安装时内置好,默认锁定的。
解锁SCOTT账户
解锁普通用户:
alter user 用户名 account unlock;
SQL> alter user scott account unlock;
修改普通用户密码,密码以英文字母开头
alter user 用户名 identified by 新密码【密码以字母开头】;
SQL> alter user scott identified by tiger;
(3)表空间创建
-
Oracle数据库是通过表空间来存储物理表的,一个数据库实例可以有N个表空间,一个表空间下可以有N张表。
-
表空间(tablespace)是数据库的逻辑划分,每个数据库至少有一个表空间(称作SYSTEM表空间)。为了便于管理和提高运行效率,可以使用一些附加表空间来划分用户和应用程序。例如:USER表空间供一般用户使用,RBS表空间供回滚段使用。一个表空间只能属于一个数据库。
create tablespace 表空间的名称
datafile 'c:\itcast.dbf'
size 100m
-
itcast
为表空间名称 -
datafile
指定表空间对应的数据文件 -
size
后定义的是表空间的初始大小 -
autoextend on
自动增长 ,当表空间存储都占满时,自动增长 -
next
后指定的是一次自动增长的大小。
(4)用户的相关操作
#创建用户 create user aaa identified by aaa #赋予权限 grant connect,resource to aaa; #回收对象权限 revoke connect,resource from aaa;
Oracle数据类型
字符串类型
-
VARCHAR2 类型
-
可以存储4,000 字节的信息。类型不同,它不会使用空格填充至最大长度。VARCHAR2 最多以存储4,000 字节的信息。char
-
-
CHAR类型
-
,定长字符串,会用空格填充来达到其最大长度。非NULL的CHAR (12)
-
总是包含12字节信息。CHAR字段最多可以存储2,000字节的信息。如果创建表时,不指定CHAR长度,默认为1
-
-
nchar
-
根据字符集而定的固定长度字符串。用于存储固定长度的字符串,一个空间占用2个字节,最多存储2000个字节,即:nchar(1000),注意这里的1000表示字符数。
-
-
nvarchar2
-
这是一个包含UNICODE格式数据的变长字符串。NVARCHAR2 最多可以存储4,000 字节的信息。
-
数字类型
-
NUMBER 类型
-
NUMBER(P,S)是最常见的数字类型。
-
P 是Precision 的英文缩写,即精度缩写,表示有效数字的位数,最多不能超过38 个有效数字。
-
S 是Scale 的英文缩写,表示小数点数字的位数。
-
日期类型
-
DATE 类型
-
DATE 是最常用的数据类型,日期数据类型存储日期和时间信息。虽然可以用字符或数字类型表示日期和时间信息,但是日期数据类型具有特殊关联的属性。为每个日期值,Oracle存储以下信息: 世纪、年、月、日期、小时、分钟和秒。一般占用7 个字节的存储空间
- insert into t_date values(to_date('2018-12-22', 'yyyy-mm-dd')); //2018/12/22 -insert into t_date values(to_date('2018-12-22 15:22:16', 'yyyy-mm-dd hh24:mi:ss'));//2018/12/22 15:22:16
-
大数据类型
-
LONG
-
用于存储可变长度的超长字符串,最大长度为2G,通常用于存储备注字段,或者 varchar2 和 nvarchar2 不够存储时
-
create table t_long(name long); insert into t_long values('李a1');
-
CLOB
-
最大长度为4G,存储与字符集相关
-
create table t_clob(name clob); insert into t_clob values('李a2');
-
NCLOB
-
根据字符集而定的字符数据,最大长度为4G
-
create table t_nclob(name nclob); insert into t_nclob values('李a3');
-
BLOB
-
是一种二进制大型对象(Binary Large Object),最大长度为4G,适用于存储非文本的字节流数据,如:视频、音频等
-
由于视频、音频文件存储在数据库中会进行转码(压码、解码),所以通常并不会将这些数据存储在数据库中。但是存储在数据库中会比较安全,也支持该方式去存储
-
create table t_blob(name blob);
二进制数据
-
RAW
-
固定长度的二进制数据,最大长度 2000个字节,可存储多媒体视频、音频格式等。
-
-
LONG RAW
-
可变长度的二进制数据,最大长度2G,与 RAW 类似。
-
-
BFILE
-
存储在数据库之外的二进制数据,最大长度4G。
-
-
ROWID
-
该数据类型主要用于返回ROWID伪列,常用在可以将表中的每一条记录都加以唯一标识的场合。数据表中记录的唯一行号,占10个字节
-
SELECT t1.rowid, dump(t1.rowid) bytes, t1.empno, t1.ename FROM emp t1;
-
NROWID
-
二进制数据表中记录的唯一行号,最大长度4000个字节。
-
表的创建[应用]
CREATE TABLE 数据表名称 ( 字段1 数据类型 约束, 字段2 数据类型 约束, ... );
内置函数
-
单行函数
-
日期函数
-
ADD_MONTHS
-
MONTHS_BETWEEN
-
LAST_DAY
-
ROUND
-
NEXT_DAY
-
TRUNC
-
EXTRACT
-
-
数字函数
-
Abs(n) :绝对值
-
Ceil(n) :向上取整
-
Floor(n):向下取整
-
Mod:取模
-
Round:
-
Sqrt
-
Sign:判断正负数
-
-
字符函数
-
CHR和ASCII
-
LPAD和RPAD
-
TRIM:去除两边的空格
-
RTRIM:去右边的空格
-
LTRIM:去除左边的空格
-
DECODE
-
Substr:截取字符串
-
LENGTH:获取字符串的长度
-
-
转换函数
-
TO_CHAR:转化成字符串类型
-
TO_DATE:转化成日期类型
-
TO_NUMBER:转化成数字类型
-
-
-
分组函数
-
AVG:平均数
-
MIN:最小值
-
MAX:最大值
-
SUM:总和
-
COUNT:记数量
-
-
分析函数
-
ROW_NUMBER:返回连续的排位,不论值是否相等
-
RANK:具有相等值的行排位相同,序数随后跳跃
-
DENSE_RANK:具有相等值的行排位相同,序号是连续的
-