定义存储过程时有形参吗
‘壹’ 执行存储过程怎么传入参数
在Oracle中定义存储过程的时候有定义传入参数的个数和类型的。
sql">createprocerepro_name(v_para1invarchar2,v_para2invarchar2)
调用的时候:
declare
v_para1varchar2(30):='parameter1';
v_para2varchar2(30):='parameter2';
begin
pro_name(v_para1,v_para2);
end;
/
‘贰’ 定义函数时,必须要有形参 对吗
可以
形参是指针数组
如:
main(int
argc,char*
argv)
argc是命令行参数个数,
假设argc是3
argv【0】是程序名
argv[1]是第一个参数的字符串
argv[2]是第二个参数的字符串
‘叁’ 存储过程中定义参数的意义是什么
存储过程其实就是一个功能,定义参数就是为了这个调用者使用他所要的结果
举个简单例子:
手机是存储过程(不变)
手机号码卡是参数(可变)
换不同的号码使用手机,功能可能不一样,这个号码是张三使用,那个号码是李四使用。
这就是存储过程中定义参数的意义。
‘肆’ sql server存储过程的参数有哪些类型
SQL Server存储过程是SQL数据库的重要组成部分,其中可以用到许多参数。在SQL Server存储过程中,支持输入(Input)、输出参数(Output),也支持返回值参数(ReturnValue)。
返回值参数不是一个形参,而类似于编程中的返回值类型。它都是通过Return语句来返回的,而且在SQL Server中,必须返回INT型的数据,而且很显然,只能有一个返回值,因为RETURN语句其实是会终止SQL Server存储过程的。
例子:
ALTERPROCEDURE[dbo].[GetCustomers]
(@rowcountINTOUTPUT)
AS
SELECT[CustomerID]
,[CompanyName]
,[ContactName]
,[ContactTitle]
,[Address]
,[City]
,[Region]
,[PostalCode]
,[Country]
,[Phone]
,[Fax]
FROM[Northwind].[dbo].[Customers]
SET@rowcount=@@rowcount
‘伍’ 存储过程不能有输入参数
存储过程中不能有参数。
存储过程:1减少编译次数,2简化操作,3减少了变异次数减少了和数据库的链接次数,提高效率 。存储过程的方法:1删除存储过程: DROP PROCEDURE 存储过程的名称;2查看存储过程信息:show create procere 存储过程名称;3没有存储过程的修改。
‘陆’ 存储过程必须带有参数吗
可以不带,带参数的如果指定了默认值,执行时也可以不给参数
‘柒’ 存储过程的参数类型哪几种
存储过程共有IN、OUT、INOUT三种参数类型,格式如下:CREATEPROCEDURE(IN|OUT|INOUT参数名数据类型...)存储过程可以没有参数,但如果在使用过程需要用到参数,需按上面的格式进行定义。
第一项:IN|OUT|INOUT,表示参数的类型,选择其中的一种即可;第二项:参数名,表示参数的名称;第三项:数据类型,表示这个参数的数据类型,如int、float、double、varcahr等;第四项:“…”,表示参数可以定义多个,如果有多个参数时按前三项的格式定义即可,每个参数间用英文状态下的逗号“
‘捌’ oracle存储过程,为什么创建的时候还要传参数不是应该调用的时候传吗
你理解是对的,存储过程在创建的时候是不需要输入参数的,只有在调用的时候才需要传递参数。
首先,存储过程中你定义参数的时候没有指定输入输出,vsalary IN ,vsalary ,IN 或者OUT 输出参数。
create or replace procere p_employee(vsalary IN number,vsalary2 IN number)
as.....
vsalary 和vsalary2即为变量名,在后面游标中直接使用变量名,不需要&vsalary 和&vsalary2。
按存储过程规范来修改一下,,祝你成功。
‘玖’ oracle 存储过程为什么要有参数啊
http://hi..com/wangqing999/blog/item/0991d3124070854420a4e9b4.html
Oracle 存储过程 的例子代码.
关于 参数 IN/OUT 参数默认值 指定特定参数的情况 , 都有相应的例子。