一、PL/SQL简介
1、什么是PL/SQL程序?(PL/SQL是对SQL语言的一个扩展,从而形成的一个语言)
2、PL/SQL语言的特点(操作Orcale数据库效率最高的就是PL/SQL语言,而不是C,C++,或者Java)
3、不同数据库的SQL拓展
二、PL/SQL基础语法
1、PL/SQL的程序结构
2、定义基本变量
三、PLSQL代码讲解
1、引用型变量讲解
2,记录型变量代码讲解
四、PLSQL中if语句的使用(begin开始到end就是程序段)
五、PLSQL循环语句
1,while循环
2,loop循环(老师推荐使用这个循环,loop循环在控制光标的时候比较方便)
2,for循环
六、光标(光标就是个结果集,用来代替集合)
取一行光标的值
PL/SQL光标之光标的语法的第一个实例
七、给员工涨工资实例
八、PL/SQL光标
1、PL/SQL光标之光标的属性和光标数限制(Oracle数据库对光标的数目又限制,只能打开三百个)
2、PL/SQL光标之带参数的光标
打印十号员工的姓名
十、例外
1、系统例外之no_data_found
2、系统例外之too_many_rows
3、系统例外之zero_divide
4、系统例外之value_error
5、自定义例外
十一、案例集锦
1、运用瀑布模型完成PLSQL程序的设计
2、案例1:统计每年入职的员工数
3,案例2:员工涨工资问题
代码:有update就要有一个commit将更新的数据提交数据库(不要一上来就写代码,要进行需求分析。同时以后编写完代码之后一定要做一些测试)
4、案例3:涉及两张表的员工涨工资问题
5、案例4:成绩统计
运行结果:
十二:总结(我们要学习PL/SQL语言的原因:我们直接通过java语言调用数据库的效率比较低,PL/SQL是面向过程的一梦语言,调用数据库的时候一般都是PL/SQL写好业务逻辑的时候,再通过java调用)
PL/SQL语言的学习笔记的更多相关文章
-
Oracle PL/SQL语句基础学习笔记(上)
PL/SQL是ORACLE对标准数据库语言的扩展,ORACLE公司已经将PL/SQL整合到ORACLE server和其它工具中了,近几年中很多其它的开发者和DBA開始使用PL/SQL,本文将讲述PL ...
-
ORACLE PL/SQL异常处理(Exception)学习笔记
1.PL/SQL错误类型 错误类型 报告者 处理方法 编译时错误 PL/SQL编译器 交互式地处理:编译器报告错误,你必须更正这些错误 运行时错误 PL/SQL运行时引擎 程序化地处理:异常由异常处理 ...
-
SQL反模式学习笔记1 开篇
什么是“反模式” 反模式是一种试图解决问题的方法,但通常会同时引发别的问题. 反模式分类 (1)逻辑数据库设计反模式 在开始编码之前,需要决定数据库中存储什么信息以及最佳的数据组织方式和内在关联方式. ...
-
SQL反模式学习笔记20 明文密码
目标:恢复或重置密码 反模式:使用明文存储密码 1.存储密码 使用明文存储密码或者在网络上传递密码是不安全的. 如果攻击者截取到你用来插入(或者修改)密码的sql语句,就可以获得密码. 黑客获 ...
-
浅谈PL/SQL语言基础
在前面的学习中,我们大部分接触的都是SQL语言,但是,在实现复杂操作的时候,SQL语言就无能为力了,这时候就需要引入新的语言,PL/SQL语言就是对SQL语言的扩展,可以实现存储过程,函数等的创建.下 ...
-
SQL反模式学习笔记5 外键约束【不用钥匙的入口】
目标:简化数据库架构 一些开发人员不推荐使用引用完整性约束,可能不使用外键的原因有一下几点: 1.数据更新有可能和约束冲突: 2.当前的数据库设计如此灵活,以至于不支持引用完整性约束: 3.数据库为外 ...
-
SQL反模式学习笔记3 单纯的树
2014-10-11 在树形结构中,实例被称为节点.每个节点都有多个子节点与一个父节点. 最上层的节点叫做根(root)节点,它没有父节点. 最底层的没有子节点的节点叫做叶(leaf). 中间的节点简 ...
-
SQL反模式学习笔记2 乱穿马路
程序员通常使用逗号分隔的列表来避免在多对多的关系中创建交叉表, 将这种设计方式定义为一种反模式,称为“乱穿马路”. 目标: 存储多属性值,即多对一 反模式:将多个值以格式化的逗号分隔存储在一个字段中 ...
-
SQL反模式学习笔记4 建立主键规范【需要ID】
目标:建立主键规范 反模式:每个数据库中的表都需要一个伪主键Id 在表中,需要引入一个对于表的域模型无意义的新列来存储一个伪值,这一列被用作这张表的主键, 从而通过它来确定表中的一条记录,即便其他的列 ...
随机推荐
-
利用googleapis在日文系统中改善中文字
加入以下两句 1. <head> <link rel="stylesheet" href="http://fonts.googleapis.com/ea ...
-
log4j导致的性能问题
问题背景 双十一零点时,有一个服务A(后文该服务都用A来代替)的tp99由平常的50ms左右突然彪到60000ms,导致调用端积累了几十W的数据,同时,也影响到了同一个docker上的其他服务.那为什 ...
-
XAMPP PHP redis 扩展
1.php增加redis扩展 echo phpinfo();exit;查看php 版本以及 vc运行库 可知 X86 MSVC11 PHP5.6 首先把对应版本的php_redis.dll 和 ...
-
[CS231n-CNN] Training Neural Networks Part 1 : activation functions, weight initialization, gradient flow, batch normalization | babysitting the learning process, hyperparameter optimization
课程主页:http://cs231n.stanford.edu/ Introduction to neural networks -Training Neural Network ________ ...
-
[linux]SSH公钥登录
由于口令密码容易泄露,SSH公钥登录相比口令登录更加安全.SSH可以轻松使用非对称加密技术给两台机子订立契约,步骤如下: 第一步 本地机生成秘钥对 指令:ssh-keygen 功能:在本地(~/.ss ...
-
android 中activity调用本地service中的方法。
1.自定义一个接口,暴露服务中的方法 public interface IService { /**服务中对外暴露的方法 */ void methodInService();} 2.自定一 ...
-
ECharts案例教程1
原文:http://blog.csdn.net/whqet/article/details/42703973 简介 ECharts,缩写来自Enterprise Charts,商业级数据图表,是百度的 ...
-
2014年度辛星css教程夏季版第三节
第二节我们讲述的几乎全是CSS的选择器,那么下面这一节我们来讲一下CSS的颜色和文本的一些东西,虽然我对调色不大敏感,但是对于颜色还是比较感兴趣的. *********CSS中的颜色********* ...
-
第15月第6天 ios UIScrollView不能响应TouchesBegin
1. 1:@property MyScrollView *scrollView; 2:给MyScrollView,增加类别:MyScrollView+Touch 3:在类别里实现下面三个方法: @im ...
-
HDU 5445 Food Problem(多重背包+二进制优化)
http://acm.hdu.edu.cn/showproblem.php?pid=5445 题意:现在你要为运动会提供食物,总共需要提供P能量的食物,现在有n种食物,每种食物能提供 t 能量,体积为 ...