Esempio n. 1
0
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#:
//ORIGINAL LINE: void executeInsertStatement(java.sql.Connection paramConnection, String paramString, java.util.List<Object[]> paramList) throws Exception
        internal virtual void executeInsertStatement(Connection paramConnection, string paramString, IList <object[]> paramList)
        {
            if (paramList.Count == 0)
            {
                return;
            }
            PreparedStatement preparedStatement = null;

            try
            {
                StringBuilder stringBuilder = null;
                if (logger.DebugEnabled)
                {
                    stringBuilder = (new StringBuilder("INSERT: ")).Append(paramString).Append("\n\tInserting ").Append(paramList.Count).Append(" rows");
                }
                preparedStatement = paramConnection.prepareStatement(paramString);
                foreach (object[] arrayOfObject in paramList)
                {
                    if (logger.TraceEnabled)
                    {
                        stringBuilder.Append("\n\tRow values:");
                    }
                    for (sbyte b = 0; b < arrayOfObject.Length; b++)
                    {
                        object @object = convertValues(paramConnection, arrayOfObject[b]);
                        if (logger.TraceEnabled)
                        {
                            stringBuilder.Append("\n\t\t[").Append(b).Append("] => ");
                            if (@object == null)
                            {
                                stringBuilder.Append("(null)");
                            }
                            else
                            {
                                stringBuilder.Append(@object + " (" + @object.GetType() + ")");
                            }
                        }
                        preparedStatement.setObject(b + 1, @object);
                    }
                    if (logger.TraceEnabled)
                    {
                        stringBuilder.Append("\n\tEnd of Row values:");
                    }
                    preparedStatement.addBatch();
                }
                if (logger.DebugEnabled)
                {
                    logger.debug(stringBuilder);
                }
                preparedStatement.executeBatch();
                paramConnection.commit();
                preparedStatement.close();
            }
            catch (SQLException sQLException)
            {
                if (preparedStatement != null)
                {
                    preparedStatement.close();
                }
                throw new Exception(sQLException);
            }
        }