try:CREATE PROCEDURE CoPersonBenefit
@DateTime1 VarChar(20), 
@DateTime2 VarChar(20),
@CollBenefit money  output
AS
declare  @sql1  nvarchar(500)
--
Select @CollBenefit=Sum(SaleSum) 
From ssc..GroupSaleList 
Where  ssc..GroupSaleList.DT >=convert(datetime,@DateTime1) and ssc..GroupSaleList.DT <=convert(datetime,@DateTime2)

解决方案 »

  1.   

    CREATE PROCEDURE CoPersonBenefit
    @DateTime1 VarChar(20), 
    @DateTime2 VarChar(20)AS
    declare  @sql1  nvarchar(5000), @CollBenefit money  
    --
    Set @sql1='Select @CollBenefit=Sum(SaleSum) From ssc..GroupSaleList Where  ssc..GroupSaleList.DT >='''+@DateTime1+''''+'and ssc..GroupSaleList.DT <='''+@DateTime2+''''
    exec sp_executesql @sql1,N'@CollBenefit money out'  --这里少了一个参数
    ,@CollBenefit  out
      

  2.   

    CREATE PROCEDURE CoPersonBenefit
    @DateTime1 VarChar(20), 
    @DateTime2 VarChar(20),
    CollBenefit money out
    AS
    declare  @sql1  nvarchar(5000)
    --
    Set @sql1='Select @CollBenefit=Sum(SaleSum) From ssc..GroupSaleList Where  ssc..GroupSaleList.DT >='''+@DateTime1+''''+'and ssc..GroupSaleList.DT <='''+@DateTime2+''''
    exec sp_executesql @sql1,N'@CollBenefit money out'  --这里少了一个参数
    ,@CollBenefit  out