--- sqltask.cs.original	Sun Jun 29 19:53:49 2003
+++ sqltask.cs	Tue Sep 16 17:18:16 2003
@@ -237,21 +237,18 @@
             _outputWriter = Console.Out;
          }
 
-         StringBuilder message = new StringBuilder();
-         message.Append ("SQL Task:" + Environment.NewLine);
-         message.Append ("Connection String: " + ConnectionString + Environment.NewLine);
-         message.Append ("Use Transaction?: " + UseTransaction.ToString() + Environment.NewLine);
-         message.Append ("Batch Sql Statements?: " + this.Batch.ToString() + Environment.NewLine);
-         message.Append ("Batch Delimiter: " + this.Delimiter + Environment.NewLine);
-         message.Append ("Delimiter Style: " + this.DelimiterStyle.ToString() + Environment.NewLine);
-         message.Append ("Fail On Error?: " + this.FailOnError.ToString() + Environment.NewLine);
-         message.Append ("Source script file: " + this.Source + Environment.NewLine);
-         message.Append ("Output file: " + this.Output + Environment.NewLine);
-
-         Log(Level.Info, message.ToString());
-
          if ( this.Verbose ) {
-            _outputWriter.WriteLine(message.ToString());
+             StringBuilder message = new StringBuilder();
+             message.Append ("SQL Task:" + Environment.NewLine);
+             message.Append ("Connection String: " + ConnectionString + Environment.NewLine);
+             message.Append ("Use Transaction?: " + UseTransaction.ToString() + Environment.NewLine);
+             message.Append ("Batch Sql Statements?: " + this.Batch.ToString() + Environment.NewLine);
+             message.Append ("Batch Delimiter: " + this.Delimiter + Environment.NewLine);
+             message.Append ("Delimiter Style: " + this.DelimiterStyle.ToString() + Environment.NewLine);
+             message.Append ("Fail On Error?: " + this.FailOnError.ToString() + Environment.NewLine);
+             message.Append ("Source script file: " + this.Source + Environment.NewLine);
+             message.Append ("Output file: " + this.Output + Environment.NewLine);
+             Log(Level.Info, message.ToString());
          }
 
          SqlHelper sqlHelper = new SqlHelper(ConnectionString, UseTransaction);
@@ -273,7 +270,6 @@
          }
       }
 
-
       /// <summary>
       /// Executes the SQL Statements one by one
       /// </summary>
@@ -290,14 +286,11 @@
 
          foreach ( string statement in list )
          {
-
-            Log(Level.Info, "SQL Statement:");
-            Log(Level.Info, statement);
-
             if ( this.Verbose ) {
-               _outputWriter.WriteLine();
-               _outputWriter.WriteLine("SQL Statement:");
-               _outputWriter.WriteLine(statement);
+                StringBuilder message = new StringBuilder();
+                message.Append("\nSQL Statement:\n");
+                message.Append(statement);
+                Log(Level.Info, message.ToString());
             }
 
             IDataReader results = null;
@@ -309,7 +302,6 @@
             } finally {
                ProcessResults(results, _outputWriter);
             }
-
          }
       }
 
@@ -330,13 +322,11 @@
             sql = adapter.AdaptSqlFile(Source);
          }
 
-         Log(Level.Info,  "SQL Statement:");
-         Log(Level.Info,  sql);
-
          if ( this.Verbose ) {
-            _outputWriter.WriteLine();
-            _outputWriter.WriteLine("SQL Statement:");
-            _outputWriter.WriteLine(sql);
+             StringBuilder message = new StringBuilder();
+             message.Append("\nSQL Statement:\n");
+             message.Append(sql);
+             Log(Level.Info, message.ToString());
          }
 
          IDataReader results = sqlHelper.Execute(sql, CommandTimeout);
@@ -350,38 +340,39 @@
       /// <param name="writer">TextWriter to write if print=true</param>
       private void ProcessResults(IDataReader results, TextWriter writer)
       {
-         try 
-         {
-            do 
-            {
-               DataTable schema = results.GetSchemaTable();
-               if ( schema != null )
-               {
-                  foreach ( DataRow row in schema.Rows ) {
-                     writer.Write(row["ColumnName"].ToString() + "\t");
+          // Close the reader and return if we don't want the results output.
+          if( !this.Print ) {
+              results.Close();
+              return;
+          }
+          // Format and output the results.
+          try {
+              do {
+                  DataTable schema = results.GetSchemaTable();
+                  if( schema != null ) {
+                      foreach ( DataRow row in schema.Rows ) {
+                          writer.Write(row["ColumnName"].ToString() + "    ");
+                      }
+                      writer.WriteLine();
+                      writer.WriteLine(new String('-', 79));
                   }
-                  writer.WriteLine();
-                  writer.WriteLine(new String('-', 79));
-               }
-               while ( results.Read() ) 
-               {
-                  for ( int i=0; i < results.FieldCount; i++ ) {
-                     writer.Write(results[i].ToString() + "\t");
+                  while( results.Read() ) {
+                      for ( int i=0; i < results.FieldCount; i++ ) {
+                          writer.Write(results[i].ToString() + "    ");
+                      }
+                      writer.WriteLine();
                   }
                   writer.WriteLine();
-               }
-               writer.WriteLine();
-
-            } while ( results.NextResult() );
-
-         } finally {
-            results.Close();
-         }
-         if ( results.RecordsAffected >= 0 ) {
-            Log(Level.Info, LogPrefix + "{0} records affected", results.RecordsAffected);
-         }
+              }
+              while( results.NextResult() );
+          } 
+          finally {
+              results.Close();
+          }
+          if( results.RecordsAffected >= 0 ) {
+              Log(Level.Info, LogPrefix + "{0} records affected", results.RecordsAffected);
+          }
       }
-
 
       private SqlStatementList CreateStatementList()
       {
