什么是存储过程及其优缺点?存储过程与函数的区别?

  存储过程是一个预编译的SQL语句,优点是允许模块化的设计,就是说只需创建一次,以后在该程序中就可以调用多次。
如果某次操作需要执行多次SQL,使用存储过程比单纯SQL语句执行要快。
  调用:
  1)可以用一个命令对象来调用存储过程。
  2)可以供外部程序调用,比如:java、.net程序。

  优点

  1)存储过程是预编译过的,执行效率高。

  2)存储过程的代码直接存放于数据库中,通过存储过程名直接调用,减少网络通讯。
  3)安全性高,执行存储过程需要有一定权限的用户。
  4)存储过程可以重复使用,可减少数据库开发人员的工作量。
  缺点
  移植性差

  存储过程与函数的区别

 (1)存储过程用户在数据库中完成特定操作或者任务(如插入,删除等),函数用于返回特定的数据。
   (2)存储过程声明用procedure,函数用function。
   (3)存储过程不需要返回类型,函数必须要返回类型。
   (4)存储过程可作为独立的pl-sql执行,函数不能作为独立的plsql执行,必须作为表达式的一部分。
   (5)存储过程只能通过out和in/out来返回值,函数除了可以使用out,in/out以外,还可以使用return返回值。
   (6)sql语句(DML或SELECT)中不可用调用存储过程,而函数可以。

 

posted @ 2021-07-28 14:58  醉裏挑燈看劍  阅读(1243)  评论(0编辑  收藏  举报