是否可以将参数数组传递给通过 CFQL 生成的存储过程?
我们从设计师生成方法没有任何问题。但我还没有找到任何方法在 SQL Server 上单元执行它。
尝试通过代码执行时,代码将失败并出现给定错误:
操作数类型冲突:表类型与 int 不兼容
在生成的行上:
System.Data.IDataReader reader = CodeFluentContext.Get(XYZ.Constants.XYZCodeFluentStoreName).Persistence.ExecuteReader();
CFQL 正文如下:
LOAD (enumABCGroup[] groups) WHERE ABC.Group IN (@groups) ORDER BY NumberExt
生成过程为:
CREATE PROCEDURE [XYZ].[ABC_LoadByGroups]
(
@groups [int],
@_orderBy0 [nvarchar] (64) = NULL,
@_orderByDirection0 [bit] = 0
)
AS
SET NOCOUNT ON
SELECT DISTINCT ...
FROM [XYZ].[ABC]
WHERE [XYZ].[ABC].[ABC_Group] IN (@groups)
ORDER BY [XYZ].[ABC].[ABC_Group] ASC, [XYZ].[ABC].[ABC_Label] ASC
RETURN
GO
底层数据库系统是 SQL Server 2012 (v11.0.5058.0)。
谢谢你的帮助;