我有一个Informix数据库,它公开了一些存储过程,我有一个抽象数据访问器来处理与他们的通信,但是我有一个空值的问题。通过ADO.Net命令调用Informix存储过程的最佳/正确方法?
直接可以打电话:
execute procedure some_stored_procedure(1,2,NULL,3)
,回到正确的结果,我宁愿有没有这个可空场,但它是从我手中。反正我本来试图调用它像这样:
var command = connection.CreateCommand();
command.CommandType = CommandTypes.StoredProcedure
command.CommandText = "some_stored_procedure"
// Pass in the parameters
然而这样做导致的Informix抛出一个语法错误,所以不是我不得不去的:
var command = connection.CreateCommand();
command.CommandText = "execute procedure some_stored_procedure(?,?,?,?)";
// Pass in parameters
哪些工作,但永远不会传回正确的结果,如果我尝试使参数3为空,则会产生另一个语法错误。我是否错过了一些东西,或者有没有更好的方法来调用这些存储过程?
已尝试,它仍然似乎给一个语法错误:( – Grofit