志在指尖
用双手敲打未来

oracle数据库(基本介绍)

oracle数据库

OracleDatabase,又名OracleRDBMS,或简称Oracle。是甲骨文公司的一款联系数据库办理体系。它是在数据库范畴一直处于领先地位的产品。可以说Oracle数据库体系是目前世界上盛行的联系数据库办理体系,体系可移植性好、使用方便、功能强,适用于各类大、中、小微机环境。它是一种高效率的、可靠性好的、习惯高吞吐量的数据库方案。
ORACLE数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是现在最流行的客户/服务器(CLIENT/SERVER)或B/S体系结构的数据库之一。比如SilverStream便是基于数据库的一种中间件。ORACLE数据库是现在世界上运用最为广泛的数据库办理系统,作为一个通用的数据库系统,它具有完整的数据办理功能;作为一个联系数据库,它是一个齐备联系的产品;作为分布式数据库它实现了分布式处理功能。但它的所有知识,只要在一种机型上学习了ORACLE知识,便能在各种类型的机器上运用它。oracle数据库
Oracle数据库最新版本为OracleDatabase20c。Oracle数据库12c引入了一个新的多承租方架构,运用该架构可轻松布置和办理数据库云。此外,一些创新特性可最大限度地提高资源运用率和灵活性,如OracleMultitenant可快速整合多个数据库,而AutomaticDataOptimization和HeatMap能以更高的密度压缩数据和对数据分层。这些独一无二的技术进步再加上在可用性、安全性和大数据支持方面的首要增强,使得Oracle数据库12c成为私有云和公有云布置的理想渠道。

oracle数据库基本介绍

数据库
磁盘上存储的数据的调集在物理上表现为数据文件、日志文件和操控文件等
在逻辑上以表空间形式存在必须首要创立数据库,然后才干使用Oracle
数据库实例
每个启动的数据库都对应一个数据库实例,由这个实例来访问和操控数据库为了运转数据库,
Oracle体系所运转的一切进程和分配的内存结构的组合体
数据库:永久的,硬盘上
数据库实例:暂时的,内存中
数据库物理结构
数据文件扩展名是.DBF,用于存储数据库数据的文件数据库表和数据文件不存在一对一对应联系
操控文件扩展名是.CTL,是数据库启动及运转所必需的文件默认包含3个操控文件
日志文件扩展名是.LOG,它记载了对数据的一切更改信息多个日志文件组之间循环使用oracle
数据库逻辑结构
表空间每个Oracle数据库都是由若干个表空间构成,用户在数据库中树立的一切内容都被存储到表空间中创立数据库时会自动创立若干表空间
通过选择“操控面板”→“办理工具”→“服务”,打开“服务”窗口,可以看到Oracle服务
OracleService:数据库实例服务
OracleOraDb10g_hom1TNSListener:数据库监听服务
OracleDBConsoles:企业办理器服务
OracleOraDb10g_hom1iSQL*Plus:iSQL*Plus服务
SYS和SYSTEM用户都是Oracle的体系用户,它们都使用SYSTEM表空间,SYS拥有更大的权限
为某用户解锁:
alteruserscottaccountunlock;
最好为不同的用户创立独立的表空间通过CREATETABLESPACE指令创立表空间
CREATETABLESPACEepet_tablespace//空间名
DATAFILE’E:\oracle\product\10.2.0\oradata\JBITDB\EPET.DBF’//路径
SIZE100M;//大小
CREATEUSERepet//创立用户
IDENTIFIEDBYbdqn//添加暗码
DEFAULTTABLESPACEepet_tablespace;//指定表空间
人物是具有称号的一组权限的组合常用体系预界说人物
CONNECT:暂时用户
RESOURCE:更为可靠和正式的用户
DBA:数据库办理员人物,拥有办理数据库的最高权限
#把CONNECT、RESOURCE人物颁发用户epet
GRANTCONNECT,RESOURCETOepet;
#撤销用户epet的RESOURCE人物
REVOKERESOURCEFROMepet;
#允许用户检查EMP表中的记载GRANTSELECTONempTOepet;
#允许用户更新EMP表中的记载GRANTUPDATEONempTOepet;
数据类型
字符数据类型CHAR:存储固定长度的字符串
VARCHAR2:存储可变长度的字符串
NCHAR和NVARCHAR2:存储Unicode字符集类型
NUMBER:存储整数和浮点数,格局为NUMBER(p,s)
column_nameNUMBER{p=38,s=0}
column_nameNUMBER(p){整数}
column_nameNUMBER(p,s){浮点数}
日期时刻数据类型
DATE:存储日期和时刻数据
TIMESTAMP:比DATE更准确
LOB数据类型
BLOB:存储二进制目标,如图像、音频和视频文件
CLOB:存储字符格局的大型目标
示例:
CREATETABLEmaster(
idNUMBER(11,0)PRIMARYKEY,
loginidNVARCHAR2(50)NOTNULL,
passwordNVARCHAR2(20)NOTNULL,
statusCHAR(1)DEFAULT1NOTNULL
);
CREATETABLEpet_type(
idNUMBER(11)NOTNULL,
nameNVARCHAR2(50)NOTNULL,
statusCHAR(1)DEFAULT1NOTNULL
);
ALTERTABLEpet_typeADDCONSTRAINTpet_type_pkPRIMARYKEY(id);
CREATETABLEpet(
idNUMBER(11),
master_idNUMBER(11)NOTNULL,
nameNVARCHAR2(50),
type_idNUMBER(11)NOTNULL,
healthNUMBER(11)DEFAULT100NOTNULL,
loveNUMBER(11)DEFAULT100NOTNULL,
prop1NVARCHAR2(100),
prop2NVARCHAR2(100),
prop3NVARCHAR2(100),
adopt_timeDATENOTNULL,
statusCHAR(1)DEFAULT1NOTNULL,
CONSTRAINTpet_pkPRIMARYKEY(id),
CONSTRAINTm_fkFOREIGNKEY(master_id)REFERENCESmaster(id),
CONSTRAINTt_fkFOREIGNKEY(type_id)REFERENCESpet_type(id)
);
指定表的字段的注释
COMMENTONTABLEpetIS’宠物’;
COMMENTONCOLUMNpet.nameIS’宠物昵称’;
COMMENTONCOLUMNpet.healthIS’宠物健康值’;
序列是一个数据库的内置目标发生一系列唯一的数值,作用是完成类似SQLServer中主键自增的作用
#创立序列初始值为1,步长为1,无最大值,在缓存中保存预分配10个值
CREATESEQUENCEmaster_seq
STARTWITH1
INCREMENTBY1
NOMAXVALUECACHE10;
#使用序列
INSERTINTOmasterVALUES(master_seq.nextval,’lkl’,’lkl’,1);//NEXTVAL将回来序列的下一个值
INSERTINTOmasterVALUES(master_seq.nextval,’lyg’,’801′,1);
SELECTmaster_seq.currvalFROMdual;//检查序列的当时值
SELECTmaster_seq.nextvalFROMdual;//检查序列的下一个值
#修正序列
ALTERSEQUENCEmaster_seq
INCREMENTBY5
MAXVALUE100000
NOCYCLE
NOCACHE;
#删除序列
DROPSEQUENCEmaster_seq;

未经允许不得转载:IT技术网站 » oracle数据库(基本介绍)
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

志在指尖 用双手敲打未来

登录/注册IT技术大全

热门IT技术

C#基础入门   SQL server数据库   系统SEO学习教程   WordPress小技巧   WordPress插件   脚本与源码下载