欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

.net 操作 informix 库的 随机异常

更新时间: 2014-01-05 02:20:23 责任编辑: Author_N1

 

.NET 操作 Informix 库的 随机错误.
我们用的.NET   2.0   +   OpendLink   ODBC   Driver   (5.2   版本)   读写Informix   库某一个表,同样的SQL   语句总是随机性地出现错,大约十次有一次出错,已经排除SQL语法和数据库约束这类错误,目前我们把错误定位在OpendLink   ODBC   Driver   本身的Bug或配置不当上.

主要代码如下:

System.Data.Odbc.OdbcConnection   _connection
......
......

_connection   =   new   System.Data.Odbc.OdbcConnection( "FILEDSN=myDSN;Uid=root;Pwd=; ");
_connection.Open();

......
......
System.Data.Odbc.OdbcCommand   command   =   new   System.Data.Odbc.OdbcCommand( "DELETE   FROM   cmstbls   WHERE   tabname   =   'AAA '   AND   colname   =   'BBB '; ");

command.Connection   =   _connection   ;
command.CommandType   =   CommandType.Text;
command.UpdatedRowSource   =   UpdateRowSource.None;
command.ExecuteNonQuery();

DSN配置如下:

[ODBC]
DRIVER=OpenLink   Generic   ODBC   Driver
UID=root
SqlDbmsName=
FetchBufferSize=60
UseSSL=No
NoLoginBox=No
DeferLongFetch=No
ReadOnly=No
Options=192.168.10.18
Database=CMS
ServerType=Informix   2000
Host=192.168.10.18:5000
Server=OpenLink

随机出的错误有两种,看着都很不合理:

1.   System.Data.Odbc.OdbcException:   ERROR   [42000]   [OpenLink][ODBC][Informix   Server]A   syntax   error   has   occurred.   (-201)
      at   System.Data.Odbc.OdbcConnection.HandleError(OdbcHandle   hrHandle,   RetCode   retcode)
      at   System.Data.Odbc.OdbcCommand.ExecuteReaderObject(CommandBehavior   behavior,   String   method,   Boolean   needReader,   Object[]   methodArguments,   SQL_API   odbcApiMethod)
      at   System.Data.Odbc.OdbcCommand.ExecuteReaderObject(CommandBehavior   behavior,   String   method,   Boolean   needReader)
      at   System.Data.Odbc.OdbcCommand.ExecuteNonQuery()
      at   TestOpenLinkDirver.Form1.btnRunCommand_Click(Object   sender,   EventArgs   e)   in   C:\Working\Interaction   Data   Service\TestOpenLinkDirver\Form1.cs:line   69

2.   System.Data.Odbc.OdbcException:   ERROR   [HY000]   [OpenLink][ODBC][Informix   Server]An   illegal   character   has   been   found   in   the   statement.   (-202)
      at   System.Data.Odbc.OdbcConnection.HandleError(OdbcHandle   hrHandle,   RetCode   retcode)
      at   System.Data.Odbc.OdbcCommand.ExecuteReaderObject(CommandBehavior   behavior,   String   method,   Boolean   needReader,   Object[]   methodArguments,   SQL_API   odbcApiMethod)
      at   System.Data.Odbc.OdbcCommand.ExecuteReaderObject(CommandBehavior   behavior,   String   method,   Boolean   needReader)
      at   System.Data.Odbc.OdbcCommand.ExecuteNonQuery()
      at   TestOpenLinkDirver.Form1.btnRunCommand_Click(Object   sender,   EventArgs   e)   in   C:\Working\Interaction   Data   Service\TestOpenLinkDirver\Form1.cs:line   69


我的问题:

1.   有没有朋友也出现过类似的错误?是不是这个OpendLink   ODBC   Driver   本身的Bug?

2.   如果不用OpendLink   ODBC   Driver   ,有哪些其它的Driver   对Informix   的操作比较可靠,建议一下.
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:20:23
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/8651/
本文WWW.DOC100.NET DOC100.NET版权所有。