调用存储过程,参数能不能用函数
RT 问题点数:20、回复次数:8Top
1 楼txlicenhe(马可)回复于 2004-05-04 14:18:22 得分 12
好象是不行的。Top
2 楼zjcxc(邹建)回复于 2004-05-04 14:36:04 得分 2
不能.Top
3 楼zfive5(醉马不肖)回复于 2004-05-04 17:02:04 得分 1
试试可以Top
4 楼singledj(阳光)回复于 2004-05-04 17:42:42 得分 1
好像是不可以,我认为你还是好好的弄弄存储过程的好。Top
5 楼panku(辣椒虫)回复于 2004-05-04 19:11:45 得分 1
再顶,可否在存储过程中设置可选参数?
如:
sp_AA 1 或 sp_AA 1,2Top
6 楼selfrich(jimmy)回复于 2004-05-04 19:36:56 得分 2
参数不能用函数,但可以采用变能的方式:
declare @d datetime
set @d=getdate()
exec aa @d --aa为一存储过程Top
7 楼txlicenhe(马可)回复于 2004-05-04 19:39:40 得分 0
G. 使用带 DEFAULT 的 EXECUTE 语句
这个例子创建了一个存储过程,过程中第一个和第三个参数为默认值。当运行该过程时,如果调用时没有传递值或者指定了默认值,这些默认值就会赋给第一个和第三个参数。注意 DEFAULT 关键字有多种使用方法。
USE pubs
IF EXISTS (SELECT name FROM sysobjects
WHERE name = 'proc_calculate_taxes' AND type = 'P')
DROP PROCEDURE proc_calculate_taxes
GO
-- Create the stored procedure.
CREATE PROCEDURE proc_calculate_taxes (@p1 smallint = 42, @p2 char(1),
@p3 varchar(8) = 'CAR')
AS
SELECT *
FROM mytable
proc_calculate_taxes 存储过程可以以多种组合方式执行:
EXECUTE proc_calculate_taxes @p2 = 'A'
EXECUTE proc_calculate_taxes 69, 'B'
EXECUTE proc_calculate_taxes 69, 'C', 'House'
EXECUTE proc_calculate_taxes @p1 = DEFAULT, @p2 = 'D'
EXECUTE proc_calculate_taxes DEFAULT, @p3 = 'Local', @p2 = 'E'
EXECUTE proc_calculate_taxes 69, 'F', @p3 = DEFAULT
EXECUTE proc_calculate_taxes 95, 'G', DEFAULT
EXECUTE proc_calculate_taxes DEFAULT, 'H', DEFAULT
EXECUTE proc_calculate_taxes DEFAULT, 'I', @p3 = DEFAULT
Top
8 楼zgq19801123(小强)回复于 2004-05-05 08:26:38 得分 1
学习中......Top




