pl/sql是一种编程语言,就像java一样java叫做高级编程语言
什么是编程,编程说到底就是对于数据的操作,数据包括数据库存储的和自己定义的变量常量等等数据,对他们进行逻辑化的处理
以实现特定的功能。
那么pl/sql和他一样 它叫做数据库过程语言。
既然是语言他就可以写很多东西,人们把用pl/sql写出来的代码按照功能进行划分,分为过程,函数,触发器。
pl/sql优点:
1.提高应用程序的运行性能
2.模块化的设计思想【分页的过程、订单的过程、转账的过程】
3.减少网络传输量
4.提高安全性
______________________________________________________________________________________________________________
使用pl/sql编程后相较于传统方式的对比:
1.如果不用pl/sql的编程理念的话,那么是在Java程序中写的sql然后通过连接池或者jdbc的连接方式连接到数据库
这个连接的过程和数据传输的过程中是需要话时间的(大部分时候java的机器和数据库的机器不是一台)
sql语句到了数据库那里之后需要进行编译,转化成数据库可识别的语言,编译的过程是需要话时间的
2.模块话的设计思想 需要牛逼的人来写存储过程,因为这个直接就在数据库上操刀,一定要稳准狠,新手干不了。
3.一个分页sql是有3个sql完成的,原始的话不用pl\sql编程的话他是需要传送三个sql,用了存储过程(这个名词翻译的很好存储的意思指把原有的动态的sql就像咱们之前直接在数据库中操作的那样,用完了就扔掉了,下次再用的话就在传输+编译+执行一次,存储的意思就是把实现该逻辑的sql直接写到数据库中,先给他编译完了(预编译)每次执行的时候调用这个编译完的文件就可以了,过程指的是完成这个逻辑的语言的执行过程,把这个过程记录下叫做存储过程)
4.直接传sql的话很多表名,字段,查询条件很容易暴露出来,有时直接在sql中写用户名密码,这样很危险,而存储过程呢,是一个函数名字+入参+出参,加之数据库由其自身的保护机制。
缺点:
移植性不好,项目的进行的过程中Oracle换成DB2,全部的pl/sql写的东西都要重写。
 
--编写一个存储过程,向某表中添加一条记录
create table mytest(name varchar2(30),passwd varchar2(30));
--先传固定值的存储过程
create or replace procedure sp_pro1 is
begin
--执行部分
insert into mytest('lingyejun','');
end;
/ exec sp_pro1;
call sp_pro1;

create or replace procedure sp_pro2 is
begin
delete from mytest where name='lingye';
end;
/

PL/SQL编程-介绍的更多相关文章

  1. ORACLE PL/SQL编程详解

    ORACLE PL/SQL编程详解 编程详解 SQL语言只是访问.操作数据库的语言,并不是一种具有流程控制的程序设计语言,而只有程序设计语言才能用于应用软件的开发.PL /SQL是一种高级数据库程序设 ...

  2. pl/sql编程

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  3. [推荐]ORACLE PL/SQL编程之五:异常错误处理(知已知彼、百战不殆)

    原文:[推荐]ORACLE PL/SQL编程之五:异常错误处理(知已知彼.百战不殆) [推荐]ORACLE PL/SQL编程之五: 异常错误处理(知已知彼.百战不殆) 继上三篇:ORACLE PL/S ...

  4. ORACLE PL/SQL编程之六:把过程与函数说透(穷追猛打,把根儿都拔起!)

    原文:ORACLE PL/SQL编程之六:把过程与函数说透(穷追猛打,把根儿都拔起!) ORACLE PL/SQL编程之六: 把过程与函数说透(穷追猛打,把根儿都拔起!)   继上篇:ORACLE P ...

  5. [推荐]ORACLE PL/SQL编程详解之三:PL/SQL流程控制语句(不给规则,不成方圆)

    原文:[推荐]ORACLE PL/SQL编程详解之三:PL/SQL流程控制语句(不给规则,不成方圆) [推荐]ORACLE PL/SQL编程详解之三: PL/SQL流程控制语句(不给规则,不成方圆) ...

  6. [推荐]ORACLE PL/SQL编程之四:把游标说透(不怕做不到,只怕想不到)

    原文:[推荐]ORACLE PL/SQL编程之四:把游标说透(不怕做不到,只怕想不到) [推荐]ORACLE PL/SQL编程之四: 把游标说透(不怕做不到,只怕想不到) 继上两篇:ORACLE PL ...

  7. 【强烈强烈推荐】《ORACLE PL/SQL编程详解》全原创(共八篇)--系列文章导航

    原文:[强烈强烈推荐]<ORACLE PL/SQL编程详解>全原创(共八篇)--系列文章导航 <ORACLE PL/SQL编程详解> 系列文章目录导航 ——通过知识共享树立个人 ...

  8. [推荐]ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介(千里之行,始于足下)

    原文:[推荐]ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介(千里之行,始于足下) [推荐]ORACLE PL/SQL编程详解之一: PL/SQL 程序设计简介(千里之行,始于足下 ...

  9. [顶]ORACLE PL/SQL编程详解之二:PL/SQL块结构和组成元素(为山九仞,岂一日之功)

    原文:[顶]ORACLE PL/SQL编程详解之二:PL/SQL块结构和组成元素(为山九仞,岂一日之功) [顶]ORACLE PL/SQL编程详解之二: PL/SQL块结构和组成元素(为山九仞,岂一日 ...

随机推荐

  1. MATLAB中TXT数据文件读取并写入元胞数组的方法与步骤

    一. TXT数据文件读取 Data = load('train.txt');   %简单的文件读取,这时在工作区可以看到导入的大数据变量Data 二.大数据变量Data装入元胞数组中 D = cell ...

  2. ThinkPHP项目笔记之函数篇

    说到函数,可能有人会想:框架的C(控制器)通牌都是函数构成的,没有必要讲吧. 当然,我要说的是,公共函数:function.php,该文件就是为了开发一下功能准备的,比方说,某个功能,a地方可用,b地 ...

  3. request Dispatch

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletExcepti ...

  4. Spring boot Junit Test单元测试

    Spring boot 1.40 JUnit 4 需要依赖包 spring-boot-starter-test.spring-test 建立class,加上如下注解,即可进行单元测试,别的帖子里说要加 ...

  5. 一道money计算题引发的思考

    网友提出一个问题如下 是小学和中学时候学到了增长折线问题,有点像数学问题,不过这个要求用编程来实现,恐怕还是有些逻辑要处理的,话不多说看代码吧 我给出的代码如下 代码清单: <?php func ...

  6. ios开发之--NSMutableParagraphStyle与NSParagraphStyle的使用

    在ios6以后,苹果官方建议用“- (CGRect)boundingRectWithSize:(CGSize)size options:(NSStringDrawingOptions)options ...

  7. Keil调试程序如何查看变量

    第一个问题:调试时候想实时查看某一变量变化? view 菜单下的 watch windows,全局变量才能查看 比如要查看u8 adcx的值变化,如下: 全速运行后,如下: 无法查看!什么问题? 该变 ...

  8. 【BZOJ4275】[ONTAK2015]Badania naukowe DP

    [BZOJ4275][ONTAK2015]Badania naukowe Description 给定三个数字串A,B,C,请找到一个A,B的最长公共子序列,满足C是该子序列的子串. Input 第一 ...

  9. js 匿名函数-立即调用的函数表达式

    先提个问题, 单独写匿名函数为什么报错?return 匿名函数 为什么不报错? 如图: 第二种情况在 f 还没有执行的时候,就报错了,,,当然这得归因于函数声明语句声明提前(发生在代码执行之前)的原因 ...

  10. spring-boot集成swagger

    1.引入swagger需要的java类库 <dependency> <groupId>io.springfox</groupId> <artifactId&g ...