我知道有相关的问题,但是我在网上遇到的大多数解决方案都有相同的解决方案,将分号前身从您的 where 子句中的语句中删除。但是,这对我不起作用,因为我没有分号。
我正在使用 MyBatis 并运行 NUnit 测试。
我的Batis代码
<select id="GetLineNumber" parameterClass="HashTable" resultClass="long">
<![CDATA[
SELECT
HP.LINE_NUM
FROM
ODS.HAIL_PLCY_LINE_NUM
WHERE
PLCY_ID = #PolicyId#
AND HCL_ID = #HailCoverageId#
</select>
C#代码:...
Hashtable lineNumberHash = new Hashtable
{
{"PolicyId",x.PolicyId}
,{"HailCoverageId",x.Id}
};
lastDatabaseCoverage.AddRange(IbatisSqlMapper.QueryForList<T>("GetLineNumber", lineNumberHash));
上面代码中的“X”是一个对象,属性 PolicyId 和 Id 是有效的,所以请忽略一些无上下文的信息!
请注意,我已经习惯了 SQL Server,因此如果 Select、From、Where 已关闭,那么我为简单的修复表示歉意。
我不断收到“ORA01036 非法变量...”消息
这是我的第一个问题,所以我不知道他们得到回答的速度有多快,但希望相当快:-)
提前致谢!