SQL存储过程中的 OPEN OUT_CUR FOR 是什么意思????如图

作者&投稿:暴果 (若有异议请与网页底部的电邮联系)
在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_get_student
go
create proc proc_get_student
as
select * from student;
--调用、执行存储过程
exec proc_get_student;
3、 修改存储过程
--修改存储过程
alter proc proc_get_student
as
select * from student;
4、 带参存储过程
--带参存储过程
if (object_id('proc_find_stu', 'P') is not null)
drop proc proc_find_stu
go
create proc proc_find_stu(@startId int, @endId int)
as
select * from student where id between @startId and @endId
go
exec proc_find_stu 2, 4;
5、 带通配符参数存储过程
--带通配符参数存储过程
if (object_id('proc_findStudentByName', 'P') is not null)
drop proc proc_findStudentByName
go
create proc proc_findStudentByName(@name varchar(20) = '%j%', @nextName varchar(20) = '%')
as
select * from student where name like @name and name like @nextName;
go
exec proc_findStudentByName;exec proc_findStudentByName '%o%', 't%';

扩展资料:
SQL存储过程优点:
1、重复使用。存储过程可以重复使用,从而可以减少数据库开发人员的工作量。
2、减少网络流量。存储过程位于服务器上,调用的时候只需要传递存储过程的名称以及参数就可以了,因此降低了网络传输的数据量。
3、安全性。参数化的存储过程可以防止SQL注入式攻击,而且可以将Grant、Deny以及Revoke权限应用于存储过程。
参考资料来源:百度百科—存储过程

两种方法
1.声明游标时写好SELECT语句,如
CURSOR r_cur1 IS select *** from tableName where 条件;
使用时
OPEN r_cur1;
LOOP
FETCH *** INTO variable;
EXIT WHEN r_cur1%NOTFOUND OR r_cur1%NOTFOUND IS NULL;
。。。
2.声明游标
ccc sys_refcursor;
使用时
open ccc for select dept_code,dept_name from comm.dept_dict;
loop
fetch ccc into aa,bb;
exit when ccc%notfound;
。。。
end loop;
close ccc;

把后面的这个语句的游标打开,out_cur就是游标的名字

就是把declare cursor 与 open cursor结合到一起写了。


麻阳苗族自治县15881343224: oracle存储过程中打开游标有几种方法?用open直接打开?还是用open *** for***? -
彤禄蠲痹: 两种方法 1.声明游标时写好SELECT语句,如 CURSOR r_cur1 IS select *** from tableName where 条件; 使用时OPEN r_cur1;LOOPFETCH *** INTO variable;EXIT WHEN r_cur1%NOTFOUND OR r_cur1%NOTFOUND IS NULL; ... 2.声...

麻阳苗族自治县15881343224: sql server存储过程参数有哪些 -
彤禄蠲痹: SQL Server存储过程是SQL数据库的重要组成部分,其中可以用到许多参数.在SQL Server存储过程中,支持输入(Input)、输出参数(Output),也支持返回值参数(ReturnValue). 返回值参数不是一个形参,而类似于编程中的返回值类型.它都是通过Return语句来返回的,而且在SQL Server中,必须返回INT型的数据,而且很显然,只能有一个返回值,因为RETURN语句其实是会终止SQL Server存储过程的.

麻阳苗族自治县15881343224: SQL存储过程中的 OPEN OUT - CUR FOR 是什么意思????如图 -
彤禄蠲痹: 把后面的这个语句的游标打开,out_cur就是游标的名字

麻阳苗族自治县15881343224: sql 存储过程 output参数的使用 -
彤禄蠲痹: output 就是这个存储过程返回的值 也可以说输出的值 --创建存储过程 求最大值 CREATE PROCEDURE [dbo].[P_Max] @a int, -- 输入 @b int, -- 输入 @Returnc int output --输出 ASif (@a>@b)set @Returnc =@a elseset @Returnc =@b-- 调用 declare @Returnc int exec P_Max 2,3,@Returnc output select @Returnc

麻阳苗族自治县15881343224: SQL SERVER存储过程 语法? -
彤禄蠲痹: sql server存储过程语法 存储过程就是作为可执行对象存放在数据库中的一个或多个SQL命令. 定义总是很抽象.存储过程其实就是能完成一定操作的一组SQL语句,只不过这组语句是放在数据库中的(这里我们只谈SQL Server).如果我们通...

麻阳苗族自治县15881343224: SQL 中存储过程怎么使用? -
彤禄蠲痹: 一、简单的储存过程: 1、创建一个存储过程 create procedure GetUsers() begin select * from user; end;123452、调用存储过程 call GetUsers();123、删除存储过程 drop procedure if exists GetUsers;二、带参数的存储过程 1、MySql 支持 IN ...

麻阳苗族自治县15881343224: sql语句编写存储过程,使用游标循环打印学生表中的数据,求大神 -
彤禄蠲痹: 写一个例子给楼主看下就知道了: 在sqlserver2000中新建一个存储过程: CREATE PROCEDURE PK_Test AS //声明1个变量 declare @name nvarchar(20)//声明一个游标mycursor,select语句中参数的个数必须要和从游标取出的变量名相同 ...

麻阳苗族自治县15881343224: sql 存储过程查询语句 -
彤禄蠲痹: 在数据库中先创建存储过程!具体代码如下: create proc sp_GetTesttableByname --sp_GetTesttableByname代表存储过程名称 as beginSELECT nickname,email FROM testtable WHERE name='张三' --存数过程的查询语句 end go exec sp_GetTesttableByname; --查询存储过程结果按下F5执行以上代码之后 然后再在项目中写调用存储过程语句!希望我的回答对你有所帮助,谢谢采纳!

麻阳苗族自治县15881343224: Sql 存储过程加游标结合的使用 -
彤禄蠲痹: CREATE proc jiagongzi as declare @name nvarchar(20) declare @xueli nvarchar(20) declare @time datetime declare @gongzi intdeclare zengjia cursor scroll for select * from 职员表 open zengjia fetch next from zengjia into @name,@xueli,@time...

麻阳苗族自治县15881343224: SQL的存储过程是什么 -
彤禄蠲痹: 存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中.用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它.存储过程是数据库中的一个重要对象,任何一个设计良好的数...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网