存储过程和函数之间有几个区别
2018-08-02 05:57:52来源:博客园 阅读 ()
存储过程和函数之间有几个区别:
存储过程是用户定义的SQL语句序列的集合,涉及特定表或其他对象的任务。用户可以调用存储过程。函数通常是由数据库定义的方法。它接收参数并返回某种类型的值,并且不涉及特定的用户表(如果它是自定义函数,则可能涉及用户表)。
1)通常,由存储过程实现的功能稍微复杂一点,功能的功能更具针对性。存储过程功能强大,可以执行一系列数据库操作,包括修改表;用户定义的函数不能用于执行一组修改全局数据库状态的操作。
2)对于存储过程,您可以返回参数,例如记录集,该函数只能返回值或表对象。一个函数只能返回一个变量;一个存储过程可以返回多个。存储过程的参数可以有IN,OUT,INOUT三种类型,而函数只能有IN类~~存储过程声明不需要返回类型,函数声明需要描述返回类型,而函数体必须包含有效的RETURN语句。
3)存储过程可以使用非确定性函数,并且不允许在用户定义的函数体中包含非确定性函数。
4)存储过程通常作为一个独立的部分执行(执行EXECUTE语句),并且该函数可以作为查询语句(SELECT调用)的一部分被调用,因为函数可以返回一个表对象,所以它可以在查询语句位于FROM关键字之后。存储过程在SQL语句中不可用,但可以使用函数。
存储过程和函数的优点和缺点
优点:
1.存储过程和函数允许标准组件编程,提高SQL语句的可重用性,共享性和可移植性。
2.存储过程和函数可以用作安全机制。
3.存储过程和功能可以加快执行速度并减少网络流量。
缺点:
存储过程和函数的准备比单句SQL语句更复杂。
2.编写存储过程和函数时,您需要为这些数据库对象创建权限。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- fetchone函数和fetchall函数返回值的区别 2019-08-13
- Python之装饰器笔记 2019-08-13
- Python学习日记(九) 装饰器函数 2019-08-13
- python之函数、面向对象 2019-08-13
- python3基础之“函数(2)” 2019-08-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash