I'm using the following:
App.config:
<add key="iConnectionString" value="DataSource=MyMachine; UserID=TheUser; Password=ThePassword; Naming=System; CheckConnectionOnOpen=true; DataCompression=True; Pooling=False" />
using IBM.Data.DB2.iSeries; ...
connect:
private iDB2Connection iCon; ... if (iCon == null || iCon.State != ConnectionState.Open) { try { iCon = new iDB2Connection(ConfigurationManager.AppSettings["iConnectionString"]); if (iCon == null) rv = false; else { iCon.Open(); if (iCon == null || iCon.State != ConnectionState.Open) rv = false; } } catch (iDB2CommErrorException ee) { //var Message = ee.MessageCode + ":" + ee.Message + "\n\rSQL-Status: " + ee.SqlState; rv = false; } }
insert:
try { iDB2Command iCmd = new iDB2Command("INSERT INTO EDIFSP (TFRNUM, FILENAME, PROCSTS, PROCDTTM, SND_ID, RCV_ID, TFRDIR, IFCTYPE, IFCVRSN, MAPNAME, CRTDTTM, TFRDTTM) " + "VALUES(@TFRNUM, @FILENAME, @PROCSTS, @PROCDTTM, @SND_ID, @RCV_ID, @TFRDIR, @IFCTYPE, @IFCVRSN, @MAPNAME, @CRTDTTM, @TFRDTTM)", iCon); iCmd.DeriveParameters(); iCmd.Parameters["@TFRNUM"].Value = fs.TransferNumber; iCmd.Parameters["@FILENAME"].Value = fs.FileName; iCmd.Parameters["@PROCSTS"].Value = fs.Status; iCmd.Parameters["@PROCDTTM"].Value = DateTime.Now; iCmd.Parameters["@SND_ID"].Value = fs.SenderID; iCmd.Parameters["@RCV_ID"].Value = fs.ReceiverID; iCmd.Parameters["@TFRDIR"].Value = fs.TransferDirection; iCmd.Parameters["@IFCTYPE"].Value = fs.InterfaceType; iCmd.Parameters["@IFCVRSN"].Value = fs.InterfaceVersion; iCmd.Parameters["@MAPNAME"].Value = fs.MappingName; iCmd.Parameters["@CRTDTTM"].Value = fs.CreationDateTime; iCmd.Parameters["@TFRDTTM"].Value = fs.TransferDateTime; iCmd.ExecuteNonQuery(); iCmd.Dispose(); } catch (iDB2SQLErrorException ee) { //var Message = ee.MessageCode + ":" + ee.Message + "\n\rSQL-Status: " + ee.SqlState; } catch (iDB2CommErrorException ee) { //var Message = ee.MessageCode + ":" + ee.Message + "\n\rSQL-Status: " + ee.SqlState; }
Hope that helps. Be sure to have IBM.Data.DB2.iSeries.dll and IBM.Data.DB2.iSeries.xml in your project (or path)...