Oracle复习(S2)

<!-- /* Font Definitions */ @font-face {font-family:宋体; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-alt:SimSun; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 135135232 16 0 262145 0;} @font-face {font-family:"/@宋体"; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 135135232 16 0 262145 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-parent:""; margin:0cm; margin-bottom:.0001pt; text-align:justify; text-justify:inter-ideograph; mso-pagination:none; font-size:10.5pt; mso-bidi-font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:宋体; mso-font-kerning:1.0pt;} /* Page Definitions */ @page {mso-page-border-surround-header:no; mso-page-border-surround-footer:no;} @page Section1 {size:612.0pt 792.0pt; margin:72.0pt 90.0pt 72.0pt 90.0pt; mso-header-margin:36.0pt; mso-footer-margin:36.0pt; mso-paper-source:0;} div.Section1 {page:Section1;} -->

== 第一章 :Oracle 基础

1.Oracle 是一种基于面向对象关系型的大型数据库管理系统 .

2.Oracle 的架构模式为 : 客户端 - 服务器方式

3.Oracle 数据库的特征 :  1) 多用户、大事务量处理   2) 完整性、安全性控制严格

  3) 支持分布式系统开发   4) 可移植性强

4.Oracle 默认用户 :sys system scott  其中 sys 用户是系统的最高管理员,其拥有系统级的所有数据字典和视图

  system sys 用户的代理, scott 用户是一个示范用户 , 拥有最低的权限 .

5.Oracle 的服务 :

  1) 实例服务 :OracleServiceSID  2) 监听服务 :OracleOraHome92TNSListener

  3)Web 服务 : OracleOraHome92HTTPServer

6.Oracle 中的数据库 ( 实例 ) ,包含若干个表空间,一个表空间又包含若干个数据表。一个表空间由一个或多个数据文件组成。一个数据文件只能归属于一个表空间。

    1) 表空间的创建语法 :

    create tablespace xxx       datafile 'c:/oracle/oradata/ORA/xxx.dbf'      size 10m autoextend on next 1m;

  2) 用户的创建语法 :

    create user accp    identified by accpxxx    default tablespace xxx;

  3) 给用户授权 / 回收权限 :

   grant connect to accp;  --   revoke connect from accp; --    grant unlimited tablespace to accp;

  4) 用户登录的语法 :

   conn scott/tiger;   conn scott/tiger@ABC;  conn system/manager@ABC as sysdba;

7.Oracle 网络的配置

  服务器 : 监听服务   客户端 : Net 服务名

== 第二章 : SQL

1.Oracle 数据类型 :  1) 字符   2) 数字   3) 日期   4) 二进制   5)LOB

2.Oracle 中的伪列 :

  1)ROWID: 描述了记录在 Oracle 数据表中的唯一标识

    应用例子:去除表中的重复记录 :delete where rowid not in (select max(rowid) from group by 字段 )

  2)ROWNUM: 描述了记录在结果集中的序号

    应用例子 : Oracle 分页 ( 每页显示 5 条记录,需显示第三页 )

    select * from where rownum <= 3*5

    minus

    select * from where rownum <= 2*5

3.SQL 命令分类 :

  1)DDL( 数据定义语言 ):  create    alter      drop       truncate

  2)DML( 数据操纵语言 ):  insert    delete     update     select

  3)TCL( 事务控制语言 ):  commit    rollback   savepoint  rollback to savepoint 事务点

  4)DCL( 数据控制语言 ):  grant     revoke

4.SQL 运算符

  1) 算术 :  +  -  *  /   : select 10+5 from dual;

  2) 比较 :  >  >=  <  <=  !=  =  between .. and  like in

  3) 逻辑 :  and  or  not

  4) 连接 :  ||           : select 'accp'||'aptech' as x from dual;

  5) 集合 :

    a. 并集 :  union( 去除重复 )  /  nuion all( 不去除重复 )

    b. 交集 :  intersect( 取相交部门 )

    c. 差集 :  minus( 取相减后的部门 )

5.SQL 函数 :

  1) 单行函数 : 日期函数 + 数学函数 + 字符函数 + 转换函数 + 其他函数

  2) 聚合函数 :   3) 分析函数 :

  注意 : 自己多多练习以下函数 :

       decode()    nvl()   length()  substr()  to_date()  to_char()  to_number()

== 第三章 : Oracle 数据库对象

1. 同义词 (synonym): 一个现有对象的别名

  1) 私有同义词 :

     一个用户创建,归属当前用户所有 ; 必须得到 create synonym 系统权限才能创建 ; 创建语法 :create synonym syn_x for 对象 ;

  2) 公共同义语 :

     必须得到 create public synonym 系统权限才能创建 ; 一个用户创建,但不属于当前用户所有,归系统所有 ;    创建语法 :create public synonym syn_px for 对象 ;

2. 序列 (sequence): 一个用于产生连续数字且唯一的对象

  1) 创建语法 :

    create sequence seq_x [start with n] [increament by n] ...;

  2) 属性 ( 伪列 ):

    nextval: 产生下一个新序号 ( 序列对象创建后第一次访问只能访问当前属性 )

    currval: 返回当前序号值

  : insert into tbx values(seq_x.nextval, 'accp','xxxx');

3. 视图 (view):

  1) 创建语法 :   create view vw_x  as select * from tbx

    [with check option] -- 约束了视图中的数据的更新条件     [with read only];   -- 只读视图

  2) 删除视图 :   drop view vw_x;

4. 索引 (index): 一种为提高检索速度的 Oracle 对象

  1) 索引分类及创建语法 :

    a. 唯一索引 : create unique index ind_x on ( 字段 );

    b. 组合索引 : create index ind_xx on ( 字段 , 字段 );

    c. 反向索引 : create index ind_x on ( 字段 ) reverse;

    d. 位图索引 : create bitmap index ind_x on ( 字段 );

    e. 函数索引 : create index ind_x on ( 函数 ( 字段 ));

  2) 删除索引 :    drop index ind_x;

== 第四章 : PL/SQL 基础

1.PL/SQL:    1)PL/SQL 是过程语言 (Procedural Language) 与结构化查询语言 (SQL) 结合而成的编程语言

  2) 用于创建存储过程、触发器和程序包,给 SQL 语句的执行添加程序逻辑

  3) 优点 :

    a. 支持面向对象编程 (OOP);    b. 可移植性强 , 安全性高 ;    c. SQL 紧密集成 , 简化数据处理 ;

2.PL/SQL 程序块创建语法 :

  DECLARE

   声明部分

  BEGIN

   执行部分

  [EXCEPTION

   异常处理部分 ]

  END;

3.PL/SQL 数据类型 :

  数字 - 字符 - 日期 - 布尔 -LOB- 属性

  %TYPE: 标识表的一个字段类型       : var v_code emp.empno%type;

  %ROWTYPE: 标识表的一条记录类型    : var v_emp  emp%rowtype;

4.PL/SQL 控制语句 :

  条件 : if  case  

  循环 : loop  while  for

5. 动态 SQL:

  execute immediate 'create table tbx(a number, b varchar2(20))';

  execute immediate 'update tbx set b=xxx where a=1';

6. 异常处理 :  ...

 

== 第五章 : 游标管理

1. 游标分类 :

  1) 隐式游标 : update tbx set b='xxx' where a=1; --Oracle 自动创建和维护

  2) 显式游标 : 声明 + 打开 + 提取 + 关闭

  3) 参照游标 : 声明游标类型 + 声明游标变量 + 打开 + 提取 + 关闭

2. 显式游标 :

  1) 无参游 : 2) 带参游 :3) 显式游标应用 : a. 游标 FOR 循环 : 游标操作的一种简便应用 b. 利用游标更新 : (* 考点 )

== 第六章 : 子程序 & 程序包

1. 子程序 : 一种命名的 PL/SQL 程序块 , 包含存储过程与函数

2. 子程序的优点 :   模块化 / 可重用性 / 可维护性 / 安全性

3. 存储过程 :

  1) 创建语法 :

    create or replace procedure pro_x

    as 本地变量

    begin  执行语句块 ... end;

  2) 参数的三种模式 :

    in + out + in out

  3) 执行存储程序 :

    SQL>execute 存储过程名 ( 参数 );

4. 函数 :

  1) 创建语法 :

    create or replace function fun_x return 类型

    as 本地变量

    begin  执行语句块 ... return 返回值 ; end;

  2) 参数的三种模式 :      in + out + in out

  3) 函数调用 :    SELECT 函数名 ( 参数 ) FROM DUAL;

5. 程序包 程序包由包规范和包主体两部分组成

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值