exec(@SQL2_S)     
=========>
EXEC SP_EXECUTESQL @SQL2_S,N'@RowCount_S int OUTPUT',@RowCount_S OUTPUTps:  @SQL2_S要定义为nvarchar类型

解决方案 »

  1.   

    修改這一句
    set @SQL2_S='set '+ @RowCount_S + '=(select count(*) from Control_Item_Rule  where BIOMarker_ID='+Convert(varchar(6),@MarkerID)
    exec(@SQL2_S)
      

  2.   

    set @SQL2_S='set @RowCount_S =(select count(*) from Control_Item_Rule  where BIOMarker_ID='+Convert(varchar(6),@MarkerID)
         exec(@SQL2_S)    
    =====================================>>>>>
    set @SQL2_S=N'select @RowCount_S=count(*) from Control_Item_Rule  where BIOMarker_ID='+Convert(varchar(6),@MarkerID)
    exec sp_executesql @SQL2_S,N'@RowCount_S int output',@RowCount_S output
      

  3.   

    --用executesql
    exe(@sql2_s)改为:
    exec sp_executesql @sql2_s,N'@RowCount_S int output',@RowCount_S output