SQL 中存储过程怎么使用?
发布网友
发布时间:2022-04-21 19:25
我来回答
共1个回答
热心网友
时间:2022-04-07 22:52
一、简单的储存过程:
1、创建一个存储过程
create procere GetUsers()
begin
select * from user;
end;12345
2、调用存储过程
call GetUsers();12
3、删除存储过程
drop procere if exists GetUsers;
二、带参数的存储过程
1、MySql 支持 IN (传递给存储过程) , OUT (从存储过程传出) 和 INOUT (对存储过程传入和传出) 类型的参数 , 存储过程的代码位于 BEGIN 和 END 语句内 , 它们是一系列 SQL 语句 , 用来检索值 , 然后保存到相应的变量 (通过指定INTO关键字) ;
2、下面的存储过程接受三个参数 , 分别用于获取用户表的最小 , 平均 , 最大分数 , 每个参数必须具有指定的类型 , 这里使用十进制值(decimal(8,2)) , 关键字 OUT 指出相应的参数用来从存储过程传出
create procere GetScores(
out minScore decimal(8,2),
out avgScore decimal(8,2),
out maxScore decimal(8,2)
)
begin
select min(score) into minScore from user;
select avg(score) into avgScore from user;
select max(score) into maxScore from user;
end;1234567891011
3、调用此存储过程 , 必须指定3个变量名(所有 MySql 变量都必须以 @ 开始) , 如下所示 :
call GetScores(@minScore, @avgScore, @maxScore);12
4、该调用并没有任何输出 , 只是把调用的结果赋给了调用时传入的变量 @minScore, @avgScore, @maxScore , 然后即可调用显示该变量的值 :
select @minScore, @avgScore, @maxScore;
5、使用 IN 参数 , 输入一个用户 id , 返回该用户的名字 :
create procere GetNameByID(
in userID int,
out userName varchar(200)
)
begin
select name from user
where id = userID
into userName;
end;12345678910
6、调用存储过程 :
call GetNameByID(1, @userName);
select @userName;123
参考资料
SQL存储过程使用介绍.csdn博客[引用时间2017-12-31]
SQL 中存储过程怎么使用?
1、创建一个存储过程 create procedure GetUsers()begin select * from user;end;12345 2、调用存储过程 call GetUsers();12 3、删除存储过程 drop procedure if exists GetUsers;二、带参数的存储过程 1、MySql 支持 IN (传递给存储过程) , OUT (从存储过程传出) 和 INOUT (对存储过程传入和传...
怎么使用存储过程
3.存储过程能够减少网络流量 对于同一个针对数据数据库对象的操作,如查询修改,如果这一操作所涉及到的Transaction-SQL 语句被组织成一存储过程,那么当在客户计算机上调用该存储过程时,网络中传送的只是该调 用语句,否 则将是多条SQL 语句从而大大增加了网络流量降低网络负载。 4.存储过程可被作为一种安全机制...
SQL SERVER 如何应用存储过程呢?操作方法有什么呢?
首先最好在SQL SERVER的管理工具中通过create procedure写一条语句来创建存储过程,创建语句后,点击工具栏中的执行命令,消息栏中显示命令已成功完成的消息,证明存储过程已创建。然后就可以在存储过程子文件夹下看到自己创建的存储过程了,执行存储过程,可以使用exec命令,后跟存储过程的名称,另外,还可以在...
在SQL中存储过程的一般语法是什么?
1、 创建语法 create proc | procedure pro_name [{@参数数据类型} [=默认值] [output],{@参数数据类型} [=默认值] [output],...]as SQL_statements 2、 创建不带参数存储过程 --创建存储过程 if (exists (select * from sys.objects where name = 'proc_get_student'))drop proc proc_...
SQL 存储过程建立和使用方法?
回答:Sql Server的存储过程是一个被命名的存储在服务器上的Transacation-Sql语句集合,是封装重复性工作的一种方法,它支持用户声明的变量、条件执行和其他强大的编程功能。 存储过程相对于其他的数据库访问方法有以下的优点: (1)重复使用。存储过程可以重复使用,从而可以减少数据库开发人员的工作量。 (2)提...
mysql存储过程实例详解
1、存储过程可以进行封装,并且隐藏复杂的商业逻辑。2、存储过程能够回传值,并能接受参数。3、存储过程通常是无法使用SELECT指令来进行运行的,由于它是属于子程序,与查看表、数据表或是用户定义函数不同。4、存储过程能够用于数据检验,强制实行商业逻辑等。当然,它也存在了一部分缺点:1、存储过程一般...
sql server 怎样在存储过程中调用存储过程
一、SQL SERVER中调用不带输出参数的存储过程 SQL 代码 ?--存储过程的定义 create procedure [sys].[sp_add_product]()as go --存储过程的调用 declare @m_viewcount int declare @m_hotcount int exec sp_add_product @m_viewcount,@m_hotcount 二、SQL SERVER中调用带输出参数的存储过程 SQ...
sqlserver里存储过程怎么调用存储过程
1、打开SQL Server Managment管理工具,新建一个表。2、然后在表中插入一些样例数据。3、接下来在SQL Server Managment中右键单击可编程性,选择新建存储过程。4、然后在SQL编写界面中编写SQL语句,注意这里的@name就是接收的输入参数。5、编写好存储过程,执行一下,就会在可编程性下面找到创建的存储过程...
SQL的存储过程怎么用!~~
A. 使用简单过程以下存储过程将从视图中返回所有雇员(提供姓和名)、职务以及部门名称。此存储过程不使用任何参数。复制USE AdventureWorks;GOIF OBJECT_ID ( 'HumanResources.uspGetAllEmployees', 'P' ) IS NOT NULL DROP PROCEDURE HumanResources.uspGetAllEmployees;GOCREATE PROCEDURE HumanResources.uspGetAllEmp...
SQL中创建的存储过程要怎么样才能运行?
(1)创建存储过程和调用存储过程:创建语法:CREATE PROCEDURE<过程名>[:版本号][@<参数名><参数类型>[=<默认值>][OUTPUT]……][WITH RECOMPILE|ENCRYPTION|RECOMPILE,ENCRYPTION]AS <SQL语句组> 其中:版本号是可选的整数,它用于将有相同名字的存储过程编为不同的组.在执行时可选版本,但创建时一次...