C# - 使用ODBC插入AS400时出错

时间:2013-08-22 21:22:50

标签: c# insert odbc

有人可以帮助我???

我尝试使用C#和ODBC iSeries创建一个应用程序,将一些XML信息插入到AS400中。 所以,我有一个错误,我无法解决和解决。

* System.Data.Odbc.OdbcException(0x80131937):ERROR [42000] [IBM] [iSeries Access ODBC Driver] [DB2 UDB] SQL0104 - Token;无效。有效代币:。    在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)    在System.Data.Odbc.OdbcCommand.ExecuteReaderObject(CommandBehavior behavior,String method,Boolean needReader)    在System.Data.Odbc.OdbcCommand.ExecuteNonQuery()    在J:\ Documents \ Projetos \ Projetos VS2010 \ XmlTransport \ XmlTransport \ AS400Connect.cs中的XmlTransport.AS400Connect.AS400Insert(String strInsert):第48行*

第48行是我的ExecuteNonQuerry命令:

OdbcConnection conn = new OdbcConnection("Dsn=LA400PC;system=LA400PC;uid=SOMEUSER;pwd=SOMEPWD;dbq=QGPL;dftpkglib=QGPL;languageid=ENU;pkg=QGPL/DEFAULT(IBM),2,0,1,0,512;translate=1;signon=1");
            conn.Open();
            try
            {              

                OdbcCommand insertComand = new OdbcCommand(strInsert, conn);
                insertComand.ExecuteNonQuery();
             }

而我正试图坚持这个字符串:

INSERT INTO ZSA3837.CONFXMLH VALUES ('26111160500246001479550010000564091205644070', '1', '56409', 20111116, 60500246001479, 97422620000150, 122929.08, 14751.50, 200743.19, 19374.84, 122929.08, 18439.36, 160743.28);

我正在尝试很多但却无法创作...有谁可以帮我? 感谢

1 个答案:

答案 0 :(得分:0)

AS400 connection string

我对此非常幸运。我认为DSN是针对PC的,所以它可能会对此持不同意见。