IBE.SQL.EliteDBIO.DeleteMarketData C# (CSharp) Method

DeleteMarketData() public method

delete all market data older than x days
public DeleteMarketData ( Int32 days ) : void
days System.Int32
return void
        public void DeleteMarketData(Int32 days)
        {
            String sqlString;
            Int32 deletedRows = 0;
            Int32 deletedRowsSum = 0;
            Int32 rowsToDelete;

            sqlString = String.Format("select count(*) from tbcommoditydata" + 
                                      " where timestamp <= (NOW() - INTERVAL {0} DAY)", 
                                      days);

            rowsToDelete = Program.DBCon.Execute<Int32>(sqlString);    

            sqlString = String.Format("delete from tbcommoditydata" + 
                                      " where timestamp <= (NOW() - INTERVAL {0} DAY)" +
                                      " limit 10000", 
                                      days);
            sendProgressEvent(new ProgressEventArgs() { Info=String.Format("deleting prices older than {0} days from database...", days), CurrentValue=0, TotalValue=rowsToDelete, AddSeparator=true });

            do
            {
                deletedRows = Program.DBCon.Execute(sqlString);    
                deletedRowsSum += deletedRows;

                if(sendProgressEvent(new ProgressEventArgs() { Info=String.Format("deleting prices older than {0} days from database...", days), CurrentValue=deletedRowsSum, TotalValue = rowsToDelete }))
                    break;
                        

            } while (deletedRows > 0);

            sendProgressEvent(new ProgressEventArgs() { Info=String.Format("deleting prices older than {0} days from database...", days), CurrentValue=deletedRowsSum, TotalValue = rowsToDelete, ForceRefresh=true });
        }