我正在尝试将我的查询转换为参数化,但在弄清楚语法时遇到了问题。根据 VS2012,这是没有错误的,但在运行时我得到一个错误,因为参数的值没有被替换到查询中。
这是示例代码:
IfxCommand query = new IfxCommand("SELECT slm_slmno FROM slmmas WHERE
slm_logon = @Logon");
query.Parameters.Add("@Logon", logon);
这是查询在运行时返回的错误:
Error Message = ERROR [42000] [Informix .NET provider][Informix]A syntax
error has occurred.
Sql Query = SELECT slm_slmno FROM slmmas WHERE slm_logon = @Logon
从错误中可以清楚地看出,logon 的值没有被替换到命令中。我正在使用 Informix 10.0。我查看了文档(位于http://publib.boulder.ibm.com/infocenter/idshelp/v111/index.jsp?topic=/com.ibm.net_cc.doc/dqx1db2commandclass.htm)但有没有明确的例子可以显示我想要实现的简单用法。关于我需要如何更好地解决这个问题的任何建议?