码迷,mamicode.com
首页 > 其他好文 > 详细

oralce11

时间:2015-10-06 22:05:25      阅读:213      评论:0      收藏:0      [点我收藏+]

标签:

PL/SQL 块的结构和实例

技术分享

pl/sql(procedural language(过程化语言)/sql)是oracle在标准的sql语言上的扩展。pl/sql不仅允许嵌入sql语言,还可以定义变量和常量,允许使用条件语句和循环语句,允许使用例外处理各种错误,这样使得它的功能变得更加强大。
过程、函数、触发器是存在oracle数据库的数据对象,是用 pl/sql语言编写的。pl/sql是非常强大的数据库过程语言。过程、函数可以在java中调用。因为这些在程序里面去写是很麻烦的而且基本是做不到的,所以pl/sql是简化复杂度的,减少网络开销,提高程序性能。

 

为什么学pl/sql 学习必要性
1.提高应用程序的运行性能:传统操作数据库是在java中操作的,首先得到数据库连接,然后发出sql语句,数据库这边还要编译sql语句,编译完成后才去执行。如果事先把过程(存储过程,多个sql语句)放在数据库,过程事先已经编译好了,java这边可以直接调用过程,节约了时间。

技术分享

2.模块化的设计思想【分页的过程,订单的过程,转账的过程。。】 
3.减少网络传输量 
4.提高安全性(sql会包括表名,有时还可能有密码,传输的时候会泄露。PL/SQL就不会) 

为什么PL/SQL会快呢?看图: 
不好的地方: 
移植性不好(换数据库就用不了), 

用什么编写pl/sql 
 sqlplus开发工具
sqlplus是oracle公司提供的一个工具,这个因为我们在以前介绍过的: 
举一个简单的案例: 
编写一个存储过程,该过程可以向某表中添加记录。 

 

1.创建一个简单的表 
Sql代码
1.create table mytest(name varchar2(30),passwd varchar2(30));
2.创建过程 
Sql代码 
1.create(或者replace) procedure sp_pro1 is(procedure过程,sp_pro1存储过程名字,is是关键词)  
2.begin(执行部分)   
3.insert into mytest values(韩顺平,m1234);   
4.end;   
5./  

replace:表示如果有sp_pro1,就替换 
如何查看错误信息:show error; 
如何调用该过程: 
1)exec 过程名(参数值1,参数值2...); 
2)call 过程名(参数值1,参数值2...); 

 pl/sql developer开发工具 
pl/sql developer是用于开发pl/sql块的集成开发环境(ide),它是一个独立的产品,而不是oracle的一个附带品。 
举一个简单案例: 
编写一个存储过程,该过程可以删除某表记录。 
Sql代码 
1.create or replace procedure sp_pro2 is  
2.begin--执行部分   
3.delete from mytest where name=韩顺平;   
4.end;  

pl/sql基础 

 介绍 
  开发人员使用pl/sql编写应用模块时,不仅需要掌握sql语句的编写方法,还要掌握pl/sql语句及语法规则。pl/sql编程可以使用变量和逻辑控制语句,从而可以编写非常有用的功能模块。比如:分页存储过程模块、订单处理存储过程模块、转账存储过程模块。而且如果使用pl/sql编程,我们可以轻松地完成非常复杂的查询要求。 

 

    

oralce11

标签:

原文地址:http://www.cnblogs.com/yaowen/p/4857714.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!