c# - iSeries/AS400 级别检查错误挂起 ODBC 调用

标签 c# .net odbc ibm-midrange

我正在使用 C# .NET ODBC 连接从 iSeries (AS/400) 数据库检索数据。如果文件和过程在 iSeries 端没有正确提升,ODBC 调用将导致级别检查错误。不幸的是,ODBC 驱动程序和 iSeries 之间的握手似乎有缺陷,ODBC 调用只是挂起。

在 .NET 端更改连接和命令超时值不会影响调用,调用似乎永远挂起。

在这种情况下有没有办法强制超时?

或者有没有办法强制终止 ODBC 调用(即从另一个等待固定时间的线程)并抛出异常?

最佳答案

我不太确定你的问题是什么,听起来它可能是 ODBC 驱动程序中的错误。但是,ODBC 确实通过语句属性 SQL_ATTR_ASYNC_ENABLE 定义了异步行为,并且有一个 API SQLCancel 来取消操作。

关于c# - iSeries/AS400 级别检查错误挂起 ODBC 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12610847/

相关文章:

用于编辑 XML/XSL 的 .NET Windows 控件?

c# - 如何处理System.Data.Entity.Validation.DbEntityValidationException?

c# - 找到 "Debug assertion failed"错误发生的地方

.net - 在 Lucene 中搜索短语

java - Hive 通过来自 Java 的 ODBC 问题 : parameters reordered

excel - 没有 header 的 ODBC xlsx 驱动程序连接字符串

将 ODBC 转到 iSeries : SQL0104 - Message can not be translated successfully

c# - purchase.products.get 忽略 productId 值并在 ProductPurchase 中返回 null

c# - 如何通过字符串数组的第一列搜索 List<string[]>?

.net - 在 TextBlock <span> 中调整上划线填充