我正在尝试基于 DB2 查询在 SSRS 中创建共享数据集。数据源使用 DB2OLEDB 提供程序。
当我直接以文本形式输入查询时,它会正确执行:
SELECT BTCH_DT FROM FMSCHEMA.TTRANS_HIST_DETL WHERE REC_NO = 13288604
但是,当我单击查询窗口旁边的表达式按钮时,输入以下内容:
="SELECT BTCH_DT FROM FMSCHEMA.TTRANS_HIST_DETL WHERE REC_NO = 13288604"
查询失败
ILLEGAL SYMBOL "=?<ERR_STMT> <WNG_STMT> GET SQL SAVEPOINT HOLD FREE ASSOCIATE". SOME SYMBOLS THAT MIGHT BE LEGAL ARE: SQLSTATE: 42601, SQLCODE: -104
似乎 SSRS 试图将表达式本身传递给 DB2OLEDB 提供程序,而不是评估表达式并传递该评估的结果。
我已经查看了 IBM 的网站: http: //publib.boulder.ibm.com/infocenter/db2luw/v8/index.jsp ?topic=/com.ibm.db2.udb.doc/core/rsql0100.htm但是为 SQSLSTATE 42601 提供的信息不是很有帮助:“字符、标记或子句无效或丢失。”
任何人都可以对此有所了解吗?或者指出我正确的方向?谢谢!