如何给存储过程传递参数?
这是我的存储过程,想用DELPHI的ADOStoredProc传递参数@aa给这个存储过程,就是用户选时间给@AA,ADOStoredProc然后执行。
目前set @aa= ' ' '2007-9-7 ' ' '这个是我为了测试设定的,想动态的实现,不知道怎么弄?
CREATE PROCEDURE peng AS
DECLARE @SQL VARCHAR(8000),@aa VARCHAR(80)
set @aa= ' ' '2007-9-7 ' ' '
SET @SQL= 'SELECT 时间 '
SELECT @SQL= @SQL+
',min(CASE WHEN 开启的棚 = ' ' ' + 编号 + ' ' ' THEN 客户资料 else '+ ' ' '关闭 ' ' '+ ' END) [ ' + 棚名称 + '] '
FROM (SELECT DISTINCT 编号,棚名称 FROM 棚名称) a
print @SQL
SET @SQL=@SQL+ ' FROM 录入客户 Where 日期= '+@aa + ' GROUP BY 时间 '
exec (@SQL)
------解决方案--------------------CREATE PROCEDURE peng
@aa VARCHAR(80)
AS
set nocount on
DECLARE @SQL VARCHAR(8000)--,@aa VARCHAR(80)
--set @aa= ' ' '2007-9-7 ' ' '
SET @SQL= 'SELECT 时间 '
SELECT @SQL= @SQL+
',min(CASE WHEN 开启的棚 = ' ' ' + 编号 + ' ' ' THEN 客户资料 else '+ ' ' '关闭 ' ' '+ ' END) [ ' + 棚名称 + '] '
FROM (SELECT DISTINCT 编号,棚名称 FROM 棚名称) a
print @SQL
--SET @SQL=@SQL+ ' FROM 录入客户 Where 日期= '+@aa + ' GROUP BY 时间 '
SET @SQL=@SQL+ ' FROM 录入客户 Where 日期= ' ' '+@aa + ' ' ' GROUP BY 时间 '
exec (@SQL)
set nocount off
go
--调用:
exec peng '2007-09-07 '