PLSQL入门与精通(第1章:PLSQL简介)

各位好。我是从事软件行业20年的牧无文兄。

从现在开始PL/SQL的学习载。题目就定为“PL/SQL的入门与精通”。

我想尽量用简单易懂的语言来介绍PL/SQL的要点和小技巧,不正之处请大家批评指正。

今天是第一次正式介绍plsql,先把PL/SQL的简介简单介绍一下。

我们在开发应用程序的时候,经常会用Java、C#等各种语言来编写程序记述业务逻辑。无论使用什么语言,在访问关系数据基础的时候,都会用到SQL文。这些SQL文一般都是SQL命令,譬如数据记录的增删改查(SELECT,INSERT,UPDATE,DELETE)等命令。

这些SQL命令并不是在应用程序(Java或者C#)内执行的,而是发送到数据库端交由数据库执行的,执行结果会放到变量中,应用程序(Java,C#)通过变量获取SQL的执行结果,并继续执行业务逻辑代码(Java,C#)。

SQL与其说是语言,不如说是一系列的很单纯的增删改查的命令,不能像Java或者C#那样可以记述业务逻辑。因此,商业逻辑的执行将在客户端应用程序中执行,而不是在数据库端执行的。

实际上,能够从应用程序(Java,C#)发送到关系数据库的不仅仅是增删改查等单纯的SQL命令。也可以发送一些业务逻辑让数据库执行。譬如ORACLE数据库的PL/SQL块或者PostgreSQL数据库的存储过程等。

PL/SQL是可在ORACLE上执行的编程语言。PL/SQL块是用PL/SQL语言记述的业务逻辑。因此,在PL/SQL块中,可以定义变量并使用这些变量,也可以记述条件判断(IF语句)、循环控制(While,LOOP)等处理流程。当然,也可以在PLSQL块内写SQL语句。

使用Oracle的PL/SQL块可以在数据库上执行也逻辑,有很多优点:

最重要的好处就是使用PL/SQL块可以大大提高性能。
   例如,在应用程序内单独执行1万次SQL时,应用程序和数据库之间的网络交换(发送、接收)会发生1万次。
             但是,如果将该处理记述在PL/SQL块中,通过宿主程序(Java,C#)来调用,仅仅需要一次发送和接收,
             就可以大大减少已完成网络的通信量。
             这样使用PL/SQL的话,根据情况的不同,性能会有数倍甚至几十倍的提高。

PLSQL简介,就到此为止。
以后的计划,首先,解说基本语法的要点。例如变量、IF、LOOP、过程、函数、包装、触发等。
之后,聊一下plsql性能和plsql本质上的一些话题。

扫描二维码关注公众号,回复: 12643597 查看本文章

期待下次见面。

猜你喜欢

转载自blog.csdn.net/niusr_1980_01/article/details/113915868