疯狂java


您现在的位置: 疯狂软件 >> 新闻资讯 >> 正文

SSH:Oracle数据库基础


 

  

  Oracle数据库基础

  一:Oracle基础知识

  Oracle数据库的主要特点

  (1.)支持多用户,大事务量的事务处理

  (2.)在保持数据库安全性和完整性方面性优越。

  (3.)支持分布式数据处理。将分布在不同物理位置的数据库用通信网连接起来,在分布式数据库管理系统的控制下,组成一个逻辑上统一的数据库,完成数据处理任务。

  (3.)具有可移植性。Oracle可以在windows,Linux等多种操作系统平台上使用,而SQL server 只能在Windows平台上运行。

  二:Oracle基本概念

  数据库:它是磁盘上存储数据的集合,在物理上表现为数据文件,日志文件和控制文件等,在逻辑上以表空间的形式存在

  数据库全名:全数据库名是用于区分一个数据库的标识,在安装数据库创建新数据库,创建控制文件,修改数据库结构,利用rman备份是都需要使用。

  数据库实例:每个数据库启动都对应一个数据库实例,由这个实例来访问数据库中的数据。

  表空间:每个Oracle 数据库是由若干个表空间结构,用户在数据库中建立的所有内容都储存在表空间中。

  数据文件:通常数据文件的扩展名是.dbf,是用于存储数据库文件,入存储数据库表中的记录,索引,存储过程,视图,数据字典定义。

  控制文件:通常控制文件扩展名是ctl,是一个二进制文件。

  日志文件:通常日志文件的扩展名是log,它记录了数据的所有更改信息,并提供一种数据恢复机制,确保系统在崩溃或者其他意外原因恢复重启数据库

  模式和模式对象:模式是数据库对象(如表,索引等,也称为模式对象)的集合。Oracle会为每一个数据库用户创建一个模式,此模式为当前用户所拥有,和用户具有相同的名称

  三:Windows下启动数据库

  下面介绍Oracle常用的三个服务

  oracleServiceSID服务是oracle数据库服务称为(SID)

  OracleOraDb11g_home1TNSListener服务器是监听服务

  OrcaleDBConsoleSID服务是数据库控制台服务,EMC(企业管理控制台)的服务程序(SID随安装的数据库而不同)是采用浏览器方式打开的,用于使用oracle企业管理器的程序。

  在oracle服务器端配置监听器(LISTENER)

  四:配置数据库

  监听器是oracle基于服务端的一种网络服务,主要用于监听客户端向服务器端提出的链接请求。

  客户端需要配置有关本地网络服务名(TNSNAME)

  Oracle常用的客户端配置就是采用本地网络服务名,另外还有oracle名字服务器。

  oracle客户端与服务器端的链接是通过客户发出链接请求,由服务器端监听对客户端的链接请求进行合法坚持,如果链接请求有效,则进行链接,否则拒接

  SQL*Plus工具

  五:连接数据库

  (1.)system为数据库已有的用户名。

  (2.)orcl为此用户对应的密码

  (3.)@只是一个统一的符号,分割用户名,密码和后面的网络服务名

  (4.)orcIDB是网络服务名,也叫本地网络服务名。

  2.PL/SQL Developer工具

  六:Oracle数据类型

  字符数据类型

  (1.)CHAR数据类型:当需要固定长度的字符串时,,使用char数据类型

  (2.)VARCHAR2数据类型:该数据类型支持可变长度的字符串

  (3.)NCHAR数据类型:该类型即国家字符串集,使用方法和char相同

  2. 数值数据类型:

  (1.)NUMBER数据类型可以储存正整数,负数,零,定点数和精度为38位的浮点数。

  语法:NUMBER(p,s):其中P为精度,S为范围,表示小数点最右边的数字

  3.日期时间和数据类型:

  (1.)DATA数据类型:

  (2.)TIMESTAMP数据类型

  4. LOB数据类型:

  LOB又称为“大对象”数据类型,该数据类型可以存储多达4GB的非结构化信息,入声音剪辑和视频剪辑等。LOB允许对数据进行高效,随机,分段访问。LOB可以是外部的,也可以是内部的,这取决于它的数据库位置

  (1.)CLOB:能够存储大量的字符数据

  (2.)BLOB:可以存储较大的二进制对象。

  (3.)BFILE:能够将二进制文件存储在数据库外部的操作系统文件中。。

  (4.)NCLOB:用于存储大的NCHAR字符数据。

  5. Oracle中的伪列:

  (1.)ROWID:数据库中的每行都有一个行地址,ROWID伪列返回该行地址。

  (2.)ROWNUM:对于一个查询返回的每行,ROWNUM伪列返回一个数值代表行的次序。返回几行就代表几行。

  七:SQL语音简介

  数据定义语音:

  (1.)CREATE TABLE命令:create table [schema.]table

  (column datatype {, column datatype [, …]});

  Table:表示表名称

  Column:表示列名称

  Datatype:表示该列的数据类型及其宽度。

  创建表时,需要指定唯一表名称,表内唯一的列名称,列的数据类型及其宽度。

  数据库操作语音:

  Select:查询

  Insert:插入

  Update:更新

  Delete:删除

  事务控制语音:

  Commit:提交事务

  Rollback:回滚事务

  Savepoint:在事务中创建存储点

  Rollback to将事务回滚到存储点。

  SQL操作符

  (1.)算术操作符:查询语句中药执行基于数值的计算,可以在SQL命令中的使用算术表达式。

  (2.)比较运算符:比较操作符用于比较两个表达式的值。

  (3.)逻辑操作符:用于组合多个运算的结果以生成一个真或假的结果。

  (4.)集合操作符:将两个查询的结果组合成一个结果集。

  UNION:(联合)操作符返回查询两个选定的所有不同的行。

  UNION ALL:(联合所有)操作符合并两个查询选定的所有行,包括重复的行。

  INTERSECT:(交集)操作符只返回两个查询都有的行。

  MINUS:(减集)操作符只返回由第一个查询选定而未被第二个选定的行,即在第一个查询结果中排除在第二个查询结果中出现的行。

  SQL函数

  (1.)Oracle将函数大致划分为单行函数,聚合函数,和分析函数。单行函数可以大致分为:字符函数,日期函数,数字函数,转换函数,及其他函数。

  (2.)转换函数有以下几种:

  TO_CHAR():to_char(sysdate,’YYYY”年”fmMM”月”fmDD”日”HH24:MI:SS’)from dual;

  TO_DATE():select to_char(1210.7,’$9,999.00’)from dual;

  TO_NUMBER()select to_date(‘2013-07-13’,’yyyy-mm-dd’)from dual;

  (3.)分析函数:语法如下:函数名([参数])over([分区子句] [排序子句]);

  Fow_number:函数返回一个唯一的值,当遇到相同的数据时,排名按照记录集中的记录的顺序依次递增

  Dense_rank:函数返回一个唯一的值,当遇到相同的数据时,所有相同数据排名都是一样的

  Rank:函数返回一个唯一的值,当遇到相同的数据时,所有相同数据的排名都是一样的,同时最后一条相同记录和下一条记录的排名之间空出的排名。