mysql中的存储过程是什么意思啊

mysql中的存储过程是什么意思啊,第1张

存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集

功能是将常用或复杂的工作,预先用SQL语句写好并用一个指定名称存储起来, 以后需要数据库提供与已定义好的存储过程的功能相同的服务时,只需调用 call 存储过程名字, 即可自动完成命令。

存储过程是由流控制和SQL语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,可由应用程序通过一个调用来执行,而且允许用户声明变量 。

同时,存储过程可以接收和输出参数、返回执行存储过程的状态值,也可以嵌套调用。

一、定义

1、存储过程:是由流控制和SQL语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,应用程序使用时只要调用即可

2、函数:是由一个或多个 Transact-SQL 语句组成的子程序,可用于封装代码以便重新使用。

二、存储过程和函数区别

1、存储过程不一定非要有返回值 数据库中的函数一定有返回值

2、存储过程在前台语言可以直接调用 而函数一般要有sql语句做为载体

语法

CREATE PROC [ EDURE ] procedure_name [ ; number ]

[ { @parameter data_type }

[ VARYING ] [ = default ] [ OUTPUT ]

] [ ,n ]

[ WITH

{ RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ]

[ FOR REPLICATION ]

AS sql_statement [ n ]

举例:

创建一存储过程,getDetailByName,参数学生姓名,筛选学生基本信息,不存在的话做检测。打印不存在此学生

create procedure getDetailByName

@studentname char(10)

as

if exists(select from student where sname=@studentname)

select from student

else

print '此学生不存在'

go

exec getDetailByName '张三'

存储过程,就是带有名字的一个程序块。

存储,是指这个程序块创建了之后,是存储在数据库内部的,然后我们可以在自己写的程序中通过某种手段去调用这段程序,然后这段程序就会做一件事,做什么事?我们定义存储过程的时候怎么写的,它到时候就做什么;

过程,就是程序块,说白了就是一段程序。

存储过程,创建完成之后,就存储在数据库内部了,数据库帮你记着,存储过程创建的时候都有一个名字,将来你在你的程序当中,通过某种方式(不同编程语言有不同的方式),一般来讲通过这个名字,去调用存储过程,就像使用一个方法或者函数一样,它就去做一件事!

不同的数据库的存储过程,都是用当前自己这个数据库的编程语言来编写的,比如Oracle的PL/SQL编程,等等。

自己写一个就明白了,语法不用我多说了吧?

以上就是关于mysql中的存储过程是什么意思啊全部的内容,包括:mysql中的存储过程是什么意思啊、ocacle 什么是储存过程,什么是函数、举例说明存储过程的定义与调用(数据库习题) 基于SQL server等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10629580.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-10
下一篇2023-05-10

发表评论

登录后才能评论

评论列表(0条)

    保存