⑴ 创建存储过程中有两个创建参数。一处是在AS前面,另一处是在AS 后面,有什么区别
AS前面的是输入、输出参数,AS后的是函数的返回值。
例如:create procere proc_a (para_a in varchar, para_b out number) as number
para_a是输入参数
para_b是输出参数
而proc_a的返回值是number型的,如果有这个东西,则必须在函数内return一个值或游标。
调用方法如下:
var_ret number; --定义一个接收函数返回的变量
var_ret:=proc_a('a',100); --调用函数并接收返回值赋给var_ret
⑵ 存储过程有多少个参数
可以有N个参数,但是参数的类型有IN 、OUT、 IN OUT三种
⑶ 存储过程最多能传多少个参数
你说的是mysql还是oracle,一般没有什么限制吧,比如说注册一个用户,需要传入大多的数据,也没有发现过问题,但是传入参数过多本身就是一个错误的选择
⑷ sqlser存储过程最多能有几个output参数
sp_YG_StatEmRtrRelationMedFare 指定的参数太多
--------
是说你传入的值的个数大于你的参数个数,
而不是存储过程的参数限制.
如果你的存储过程有23个参数, 而你程序端传了24个值来,
那么就会出现这个问题.
检查你程序端传过来的参数个数是否对应.
例子风已经给出来了,
⑸ oracle存储过程最多有多少参数
'不限定输入的参数个数' 是不可能的,不过如果你想实现这样可变入参个数的效果,可以变通一下。
比如:入参inStr varchar2类型(这个字符串是多个入参以固定分割符拼接而成的),传入存储过程后,在根据分隔符拆分成多个变量。
这样就可以实现你要的效果了。如果需要可变个数的出参,也可以这样做。
这只是个思路,如果有需要,还可以定义type等等。
⑹ 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
⑺ 使用SQL语句创建存储过程
使用SQL语句创建存储的具体过程如下:
1、首先,打开企业管理器,选择【工具】-【查询分析器】:
⑻ sql server中的存储过程最多可以有多少参数
VARCHAR(MAX) 或者 NVARCHAR(MAX) 参数个数不限,最大可以传入2G长度的