Example of using interval fragmentation in Informix 11.70.

kmurthy's picture

 Interval fragmentation introduced in 11.70 helps you on two fronts.

  1. Less Maintenance: once you set the policy, Informix will automatically add required data and index on demand, as data comes in with DBA intervention.
  2. More database and application availability: Once you setup your time-cyclic data management strategy, you can roll-in and roll-out data online.

We had pretty good interest during 11.70 beta and during my talk at IOD.
Number of customers have tried these out and some others have asked for example.
Attached below is the example Uday Kale created for IOD.  If you haven't already tried interval fragmentation, now is the time!
The example is long... create all the scripts in a single directory and execute the scripts from there.

How all these happens, will be in a later blog.

To achieve the first goal, you create the table like this,

create table orders

      (

      order_num               serial(1001),

      order_date              date,

      customer_num            integer not null,

      ship_instruct           char(40),

      backlog                 char(1),

      po_num                  char(10),

      ship_date               date,

      ship_weight             decimal(8,2),

      ship_charge             money(6),

      paid_date               date     
)

 

partition by range(order_date) interval(1 units month)  store in (mydbs, mydbs2)

partition prv_partition 
values < date(’01-01-2010’) in mydbs;

and not like this!

create table orders

      (

      order_num               serial(1001),

      order_date              date,

      customer_num            integer not null,

      ship_instruct           char(40),

      backlog                 char(1),

      po_num                  char(10),

      ship_date               date,

      ship_weight             decimal(8,2),

      ship_charge             money(6),

      paid_date               date      ) partition by expression

partition prv_partition 
(order_date < date(’01-01-2010’)) in mydbs,

partition jan_partition 
(order_date >= date(’01-01-2010’) and order_date <
date(’02-01-2010’) in mydbs,

partition feb_partition 
(order_date >= date(’02-01-2010’) and order_date < date(’03-01-2010’)
in mydbs,

partition mar_partition 
(order_date >= date(’03-01-2010’) and order_date < date(’04-01-2010’)
in mydbs,

partition apr_partition 
(order_date >= date(’04-01-2010’) and order_date < date(’05-01-2010’)
in mydbs,

Here are the scripts.

Step1. create database tpcds_db and dbspaces: dbs1, dbs2, dbs3, dbs4, dbs5, dbs6
Step2.   Create the scripts below and run auto_create.sh

auto_create.sh -> Script that runs create_table, then an oncheck to display the partitions created for the sales table,
            then insert_2009, then the oncheck again,
            then insert_H1_2010, then the oncheck again,
            then insert_H2_2010, then the oncheck again.

--------------auto_create.sh
dbaccess -e tpcds_db create_table
oncheck -pt tpcds_db:sales | grep DBspace

dbaccess -e tpcds_db insert_2009
oncheck -pt tpcds_db:sales | grep DBspace

dbaccess -e tpcds_db insert_H1_2010
oncheck -pt tpcds_db:sales | grep DBspace

dbaccess -e tpcds_db insert_H2_2010
oncheck -pt tpcds_db:sales | grep DBspace

---------------create_table.sql. Creates table with interval fragmentation - by month, root partition for 2009, 1 units month thereafter.
drop table sales;

create table sales (amount int, month date)    
fragment by range(month)
interval(1 units month)
store in (dbs1, dbs2, dbs3, dbs4, dbs5, dbs6)
partition p0 values < date("1/1/2010") in rootdbs;
-----------------------------------------

---------------insert_2009.sql  Inserts rows for 2009
insert into sales values(200, date("10/20/2009"));
insert into sales values(500, date("11/25/2009"));
insert into sales values(1000, date("12/30/2009"));
-----------------------------------------
---------------insert_H1_2010.sql  ... Inserts rows for first half of 2010, skipping certain months
insert into sales values(100, date("1/28/2010"));
insert into sales values(50, date("2/15/2010"));
insert into sales values(200, date("4/18/2010"));
insert into sales values(100, date("5/25/2010"));

---------------------------------------end
---------------insert_H2_2010.sql ... Inserts rows for second half of 2010, skipping certain months
insert into sales values(100, date("7/26/2010"));
insert into sales values(500, date("9/25/2010"));
insert into sales values(100, date("10/20/2010"));

---------------------------------------end

Step3.    Try out online attach and online detach.
rollon.sh -> Script that runs Nov2010.sql to create table sales_Nov2010,
        then starts dbaccess to insert some 600 rows in sales in background,
        then attaches sales_Nov2010 online,
        then detaches p_Jan2010 online.

----------rollon.sh
dbaccess tpcds_db Nov_2010

dbaccess tpcds_db add_rows &

dbaccess tpcds_db attachNov2010

dbaccess tpcds_db detachJan2010

oncheck -pt tpcds_db:sales | grep DBspace
--------------------------------------------------------------------------

-----------------Nov_2010  Create table sales_Nov2010
drop table if exists sales_Nov2010;
create table sales_Nov2010(amount int, month date
check (month >= date("11/1/2010") and month < date("12/1/2010")));
--------------------------------------------------------------------------

-----------------attachNov2010.sql -> Online attach of Nov 2010 data
alter fragment online on table sales
attach sales_Nov2010 as
partition p_Nov2010 values < date("12/1/2010");
--------------------------------------------------------------------------

-----------------detachJan2010.sql -> Online detach of Jan 2010 data.
drop table sales_Jan2010;
alter fragment online on table sales
detach partition sys_p1 sales_Jan2010;
--------------------------------------------------------------------------

-----------------add_rows.sql  -> insert 600 rows to sales table.
insert into sales values (10, "10/1/2010");
insert into sales values (10, "10/2/2010");
insert into sales values (10, "9/3/2010");
insert into sales values (10, "7/4/2010");
insert into sales values (10, "5/5/2010");
insert into sales values (10, "9/6/2010");
insert into sales values (10, "4/7/2010");
insert into sales values (10, "5/8/2010");
insert into sales values (10, "5/9/2010");
insert into sales values (10, "7/10/2010");
insert into sales values (10, "10/11/2010");
insert into sales values (10, "4/12/2010");
insert into sales values (10, "2/13/2010");
insert into sales values (10, "5/14/2010");
insert into sales values (10, "10/15/2010");
insert into sales values (10, "7/16/2010");
insert into sales values (10, "10/17/2010");
insert into sales values (10, "5/18/2010");
insert into sales values (10, "4/19/2010");
insert into sales values (10, "5/20/2010");
insert into sales values (10, "7/21/2010");
insert into sales values (10, "10/22/2010");
insert into sales values (10, "2/23/2010");
insert into sales values (10, "5/24/2010");
insert into sales values (10, "10/25/2010");
insert into sales values (10, "7/26/2010");
insert into sales values (10, "9/27/2010");
insert into sales values (10, "2/28/2010");
insert into sales values (10, "10/29/2010");
insert into sales values (10, "5/30/2010");
insert into sales values (10, "10/1/2010");
insert into sales values (10, "10/2/2010");
insert into sales values (10, "9/3/2010");
insert into sales values (10, "7/4/2010");
insert into sales values (10, "5/5/2010");
insert into sales values (10, "9/6/2010");
insert into sales values (10, "4/7/2010");
insert into sales values (10, "5/8/2010");
insert into sales values (10, "5/9/2010");
insert into sales values (10, "7/10/2010");
insert into sales values (10, "10/11/2010");
insert into sales values (10, "4/12/2010");
insert into sales values (10, "2/13/2010");
insert into sales values (10, "5/14/2010");
insert into sales values (10, "10/15/2010");
insert into sales values (10, "7/16/2010");
insert into sales values (10, "10/17/2010");
insert into sales values (10, "5/18/2010");
insert into sales values (10, "4/19/2010");
insert into sales values (10, "5/20/2010");
insert into sales values (10, "7/21/2010");
insert into sales values (10, "10/22/2010");
insert into sales values (10, "2/23/2010");
insert into sales values (10, "5/24/2010");
insert into sales values (10, "10/25/2010");
insert into sales values (10, "7/26/2010");
insert into sales values (10, "9/27/2010");
insert into sales values (10, "2/28/2010");
insert into sales values (10, "10/29/2010");
insert into sales values (10, "5/30/2010");
insert into sales values (10, "10/1/2010");
insert into sales values (10, "10/2/2010");
insert into sales values (10, "9/3/2010");
insert into sales values (10, "7/4/2010");
insert into sales values (10, "5/5/2010");
insert into sales values (10, "9/6/2010");
insert into sales values (10, "4/7/2010");
insert into sales values (10, "5/8/2010");
insert into sales values (10, "5/9/2010");
insert into sales values (10, "7/10/2010");
insert into sales values (10, "10/11/2010");
insert into sales values (10, "4/12/2010");
insert into sales values (10, "2/13/2010");
insert into sales values (10, "5/14/2010");
insert into sales values (10, "10/15/2010");
insert into sales values (10, "7/16/2010");
insert into sales values (10, "10/17/2010");
insert into sales values (10, "5/18/2010");
insert into sales values (10, "4/19/2010");
insert into sales values (10, "5/20/2010");
insert into sales values (10, "7/21/2010");
insert into sales values (10, "10/22/2010");
insert into sales values (10, "2/23/2010");
insert into sales values (10, "5/24/2010");
insert into sales values (10, "10/25/2010");
insert into sales values (10, "7/26/2010");
insert into sales values (10, "9/27/2010");
insert into sales values (10, "2/28/2010");
insert into sales values (10, "10/29/2010");
insert into sales values (10, "5/30/2010");
insert into sales values (10, "10/1/2010");
insert into sales values (10, "10/2/2010");
insert into sales values (10, "9/3/2010");
insert into sales values (10, "7/4/2010");
insert into sales values (10, "5/5/2010");
insert into sales values (10, "9/6/2010");
insert into sales values (10, "4/7/2010");
insert into sales values (10, "5/8/2010");
insert into sales values (10, "5/9/2010");
insert into sales values (10, "7/10/2010");
insert into sales values (10, "10/11/2010");
insert into sales values (10, "4/12/2010");
insert into sales values (10, "2/13/2010");
insert into sales values (10, "5/14/2010");
insert into sales values (10, "10/15/2010");
insert into sales values (10, "7/16/2010");
insert into sales values (10, "10/17/2010");
insert into sales values (10, "5/18/2010");
insert into sales values (10, "4/19/2010");
insert into sales values (10, "5/20/2010");
insert into sales values (10, "7/21/2010");
insert into sales values (10, "10/22/2010");
insert into sales values (10, "2/23/2010");
insert into sales values (10, "5/24/2010");
insert into sales values (10, "10/25/2010");
insert into sales values (10, "7/26/2010");
insert into sales values (10, "9/27/2010");
insert into sales values (10, "2/28/2010");
insert into sales values (10, "10/29/2010");
insert into sales values (10, "5/30/2010");
insert into sales values (10, "10/1/2010");
insert into sales values (10, "10/2/2010");
insert into sales values (10, "9/3/2010");
insert into sales values (10, "7/4/2010");
insert into sales values (10, "5/5/2010");
insert into sales values (10, "9/6/2010");
insert into sales values (10, "4/7/2010");
insert into sales values (10, "5/8/2010");
insert into sales values (10, "5/9/2010");
insert into sales values (10, "7/10/2010");
insert into sales values (10, "10/11/2010");
insert into sales values (10, "4/12/2010");
insert into sales values (10, "2/13/2010");
insert into sales values (10, "5/14/2010");
insert into sales values (10, "10/15/2010");
insert into sales values (10, "7/16/2010");
insert into sales values (10, "10/17/2010");
insert into sales values (10, "5/18/2010");
insert into sales values (10, "4/19/2010");
insert into sales values (10, "5/20/2010");
insert into sales values (10, "7/21/2010");
insert into sales values (10, "10/22/2010");
insert into sales values (10, "2/23/2010");
insert into sales values (10, "5/24/2010");
insert into sales values (10, "10/25/2010");
insert into sales values (10, "7/26/2010");
insert into sales values (10, "9/27/2010");
insert into sales values (10, "2/28/2010");
insert into sales values (10, "10/29/2010");
insert into sales values (10, "5/30/2010");
insert into sales values (10, "10/1/2010");
insert into sales values (10, "10/2/2010");
insert into sales values (10, "9/3/2010");
insert into sales values (10, "7/4/2010");
insert into sales values (10, "5/5/2010");
insert into sales values (10, "9/6/2010");
insert into sales values (10, "4/7/2010");
insert into sales values (10, "5/8/2010");
insert into sales values (10, "5/9/2010");
insert into sales values (10, "7/10/2010");
insert into sales values (10, "10/11/2010");
insert into sales values (10, "4/12/2010");
insert into sales values (10, "2/13/2010");
insert into sales values (10, "5/14/2010");
insert into sales values (10, "10/15/2010");
insert into sales values (10, "7/16/2010");
insert into sales values (10, "10/17/2010");
insert into sales values (10, "5/18/2010");
insert into sales values (10, "4/19/2010");
insert into sales values (10, "5/20/2010");
insert into sales values (10, "7/21/2010");
insert into sales values (10, "10/22/2010");
insert into sales values (10, "2/23/2010");
insert into sales values (10, "5/24/2010");
insert into sales values (10, "10/25/2010");
insert into sales values (10, "7/26/2010");
insert into sales values (10, "9/27/2010");
insert into sales values (10, "2/28/2010");
insert into sales values (10, "10/29/2010");
insert into sales values (10, "5/30/2010");
insert into sales values (10, "10/1/2010");
insert into sales values (10, "10/2/2010");
insert into sales values (10, "9/3/2010");
insert into sales values (10, "7/4/2010");
insert into sales values (10, "5/5/2010");
insert into sales values (10, "9/6/2010");
insert into sales values (10, "4/7/2010");
insert into sales values (10, "5/8/2010");
insert into sales values (10, "5/9/2010");
insert into sales values (10, "7/10/2010");
insert into sales values (10, "10/11/2010");
insert into sales values (10, "4/12/2010");
insert into sales values (10, "2/13/2010");
insert into sales values (10, "5/14/2010");
insert into sales values (10, "10/15/2010");
insert into sales values (10, "7/16/2010");
insert into sales values (10, "10/17/2010");
insert into sales values (10, "5/18/2010");
insert into sales values (10, "4/19/2010");
insert into sales values (10, "5/20/2010");
insert into sales values (10, "7/21/2010");
insert into sales values (10, "10/22/2010");
insert into sales values (10, "2/23/2010");
insert into sales values (10, "5/24/2010");
insert into sales values (10, "10/25/2010");
insert into sales values (10, "7/26/2010");
insert into sales values (10, "9/27/2010");
insert into sales values (10, "2/28/2010");
insert into sales values (10, "10/29/2010");
insert into sales values (10, "5/30/2010");
insert into sales values (10, "10/1/2010");
insert into sales values (10, "10/2/2010");
insert into sales values (10, "9/3/2010");
insert into sales values (10, "7/4/2010");
insert into sales values (10, "5/5/2010");
insert into sales values (10, "9/6/2010");
insert into sales values (10, "4/7/2010");
insert into sales values (10, "5/8/2010");
insert into sales values (10, "5/9/2010");
insert into sales values (10, "7/10/2010");
insert into sales values (10, "10/11/2010");
insert into sales values (10, "4/12/2010");
insert into sales values (10, "2/13/2010");
insert into sales values (10, "5/14/2010");
insert into sales values (10, "10/15/2010");
insert into sales values (10, "7/16/2010");
insert into sales values (10, "10/17/2010");
insert into sales values (10, "5/18/2010");
insert into sales values (10, "4/19/2010");
insert into sales values (10, "5/20/2010");
insert into sales values (10, "7/21/2010");
insert into sales values (10, "10/22/2010");
insert into sales values (10, "2/23/2010");
insert into sales values (10, "5/24/2010");
insert into sales values (10, "10/25/2010");
insert into sales values (10, "7/26/2010");
insert into sales values (10, "9/27/2010");
insert into sales values (10, "2/28/2010");
insert into sales values (10, "10/29/2010");
insert into sales values (10, "5/30/2010");
insert into sales values (10, "10/1/2010");
insert into sales values (10, "10/2/2010");
insert into sales values (10, "9/3/2010");
insert into sales values (10, "7/4/2010");
insert into sales values (10, "5/5/2010");
insert into sales values (10, "9/6/2010");
insert into sales values (10, "4/7/2010");
insert into sales values (10, "5/8/2010");
insert into sales values (10, "5/9/2010");
insert into sales values (10, "7/10/2010");
insert into sales values (10, "10/11/2010");
insert into sales values (10, "4/12/2010");
insert into sales values (10, "2/13/2010");
insert into sales values (10, "5/14/2010");
insert into sales values (10, "10/15/2010");
insert into sales values (10, "7/16/2010");
insert into sales values (10, "10/17/2010");
insert into sales values (10, "5/18/2010");
insert into sales values (10, "4/19/2010");
insert into sales values (10, "5/20/2010");
insert into sales values (10, "7/21/2010");
insert into sales values (10, "10/22/2010");
insert into sales values (10, "2/23/2010");
insert into sales values (10, "5/24/2010");
insert into sales values (10, "10/25/2010");
insert into sales values (10, "7/26/2010");
insert into sales values (10, "9/27/2010");
insert into sales values (10, "2/28/2010");
insert into sales values (10, "10/29/2010");
insert into sales values (10, "5/30/2010");
insert into sales values (10, "10/1/2010");
insert into sales values (10, "10/2/2010");
insert into sales values (10, "9/3/2010");
insert into sales values (10, "7/4/2010");
insert into sales values (10, "5/5/2010");
insert into sales values (10, "9/6/2010");
insert into sales values (10, "4/7/2010");
insert into sales values (10, "5/8/2010");
insert into sales values (10, "5/9/2010");
insert into sales values (10, "7/10/2010");
insert into sales values (10, "10/11/2010");
insert into sales values (10, "4/12/2010");
insert into sales values (10, "2/13/2010");
insert into sales values (10, "5/14/2010");
insert into sales values (10, "10/15/2010");
insert into sales values (10, "7/16/2010");
insert into sales values (10, "10/17/2010");
insert into sales values (10, "5/18/2010");
insert into sales values (10, "4/19/2010");
insert into sales values (10, "5/20/2010");
insert into sales values (10, "7/21/2010");
insert into sales values (10, "10/22/2010");
insert into sales values (10, "2/23/2010");
insert into sales values (10, "5/24/2010");
insert into sales values (10, "10/25/2010");
insert into sales values (10, "7/26/2010");
insert into sales values (10, "9/27/2010");
insert into sales values (10, "2/28/2010");
insert into sales values (10, "10/29/2010");
insert into sales values (10, "5/30/2010");
insert into sales values (10, "10/1/2010");
insert into sales values (10, "10/2/2010");
insert into sales values (10, "9/3/2010");
insert into sales values (10, "7/4/2010");
insert into sales values (10, "5/5/2010");
insert into sales values (10, "9/6/2010");
insert into sales values (10, "4/7/2010");
insert into sales values (10, "5/8/2010");
insert into sales values (10, "5/9/2010");
insert into sales values (10, "7/10/2010");
insert into sales values (10, "10/11/2010");
insert into sales values (10, "4/12/2010");
insert into sales values (10, "2/13/2010");
insert into sales values (10, "5/14/2010");
insert into sales values (10, "10/15/2010");
insert into sales values (10, "7/16/2010");
insert into sales values (10, "10/17/2010");
insert into sales values (10, "5/18/2010");
insert into sales values (10, "4/19/2010");
insert into sales values (10, "5/20/2010");
insert into sales values (10, "7/21/2010");
insert into sales values (10, "10/22/2010");
insert into sales values (10, "2/23/2010");
insert into sales values (10, "5/24/2010");
insert into sales values (10, "10/25/2010");
insert into sales values (10, "7/26/2010");
insert into sales values (10, "9/27/2010");
insert into sales values (10, "2/28/2010");
insert into sales values (10, "10/29/2010");
insert into sales values (10, "5/30/2010");
insert into sales values (10, "10/1/2010");
insert into sales values (10, "10/2/2010");
insert into sales values (10, "9/3/2010");
insert into sales values (10, "7/4/2010");
insert into sales values (10, "5/5/2010");
insert into sales values (10, "9/6/2010");
insert into sales values (10, "4/7/2010");
insert into sales values (10, "5/8/2010");
insert into sales values (10, "5/9/2010");
insert into sales values (10, "7/10/2010");
insert into sales values (10, "10/11/2010");
insert into sales values (10, "4/12/2010");
insert into sales values (10, "2/13/2010");
insert into sales values (10, "5/14/2010");
insert into sales values (10, "10/15/2010");
insert into sales values (10, "7/16/2010");
insert into sales values (10, "10/17/2010");
insert into sales values (10, "5/18/2010");
insert into sales values (10, "4/19/2010");
insert into sales values (10, "5/20/2010");
insert into sales values (10, "7/21/2010");
insert into sales values (10, "10/22/2010");
insert into sales values (10, "2/23/2010");
insert into sales values (10, "5/24/2010");
insert into sales values (10, "10/25/2010");
insert into sales values (10, "7/26/2010");
insert into sales values (10, "9/27/2010");
insert into sales values (10, "2/28/2010");
insert into sales values (10, "10/29/2010");
insert into sales values (10, "5/30/2010");
insert into sales values (10, "10/1/2010");
insert into sales values (10, "10/2/2010");
insert into sales values (10, "9/3/2010");
insert into sales values (10, "7/4/2010");
insert into sales values (10, "5/5/2010");
insert into sales values (10, "9/6/2010");
insert into sales values (10, "4/7/2010");
insert into sales values (10, "5/8/2010");
insert into sales values (10, "5/9/2010");
insert into sales values (10, "7/10/2010");
insert into sales values (10, "10/11/2010");
insert into sales values (10, "4/12/2010");
insert into sales values (10, "2/13/2010");
insert into sales values (10, "5/14/2010");
insert into sales values (10, "10/15/2010");
insert into sales values (10, "7/16/2010");
insert into sales values (10, "10/17/2010");
insert into sales values (10, "5/18/2010");
insert into sales values (10, "4/19/2010");
insert into sales values (10, "5/20/2010");
insert into sales values (10, "7/21/2010");
insert into sales values (10, "10/22/2010");
insert into sales values (10, "2/23/2010");
insert into sales values (10, "5/24/2010");
insert into sales values (10, "10/25/2010");
insert into sales values (10, "7/26/2010");
insert into sales values (10, "9/27/2010");
insert into sales values (10, "2/28/2010");
insert into sales values (10, "10/29/2010");
insert into sales values (10, "5/30/2010");
insert into sales values (10, "10/1/2010");
insert into sales values (10, "10/2/2010");
insert into sales values (10, "9/3/2010");
insert into sales values (10, "7/4/2010");
insert into sales values (10, "5/5/2010");
insert into sales values (10, "9/6/2010");
insert into sales values (10, "4/7/2010");
insert into sales values (10, "5/8/2010");
insert into sales values (10, "5/9/2010");
insert into sales values (10, "7/10/2010");
insert into sales values (10, "10/11/2010");
insert into sales values (10, "4/12/2010");
insert into sales values (10, "2/13/2010");
insert into sales values (10, "5/14/2010");
insert into sales values (10, "10/15/2010");
insert into sales values (10, "7/16/2010");
insert into sales values (10, "10/17/2010");
insert into sales values (10, "5/18/2010");
insert into sales values (10, "4/19/2010");
insert into sales values (10, "5/20/2010");
insert into sales values (10, "7/21/2010");
insert into sales values (10, "10/22/2010");
insert into sales values (10, "2/23/2010");
insert into sales values (10, "5/24/2010");
insert into sales values (10, "10/25/2010");
insert into sales values (10, "7/26/2010");
insert into sales values (10, "9/27/2010");
insert into sales values (10, "2/28/2010");
insert into sales values (10, "10/29/2010");
insert into sales values (10, "5/30/2010");
insert into sales values (10, "10/1/2010");
insert into sales values (10, "10/2/2010");
insert into sales values (10, "9/3/2010");
insert into sales values (10, "7/4/2010");
insert into sales values (10, "5/5/2010");
insert into sales values (10, "9/6/2010");
insert into sales values (10, "4/7/2010");
insert into sales values (10, "5/8/2010");
insert into sales values (10, "5/9/2010");
insert into sales values (10, "7/10/2010");
insert into sales values (10, "10/11/2010");
insert into sales values (10, "4/12/2010");
insert into sales values (10, "2/13/2010");
insert into sales values (10, "5/14/2010");
insert into sales values (10, "10/15/2010");
insert into sales values (10, "7/16/2010");
insert into sales values (10, "10/17/2010");
insert into sales values (10, "5/18/2010");
insert into sales values (10, "4/19/2010");
insert into sales values (10, "5/20/2010");
insert into sales values (10, "7/21/2010");
insert into sales values (10, "10/22/2010");
insert into sales values (10, "2/23/2010");
insert into sales values (10, "5/24/2010");
insert into sales values (10, "10/25/2010");
insert into sales values (10, "7/26/2010");
insert into sales values (10, "9/27/2010");
insert into sales values (10, "2/28/2010");
insert into sales values (10, "10/29/2010");
insert into sales values (10, "5/30/2010");
insert into sales values (10, "10/1/2010");
insert into sales values (10, "10/2/2010");
insert into sales values (10, "9/3/2010");
insert into sales values (10, "7/4/2010");
insert into sales values (10, "5/5/2010");
insert into sales values (10, "9/6/2010");
insert into sales values (10, "4/7/2010");
insert into sales values (10, "5/8/2010");
insert into sales values (10, "5/9/2010");
insert into sales values (10, "7/10/2010");
insert into sales values (10, "10/11/2010");
insert into sales values (10, "4/12/2010");
insert into sales values (10, "2/13/2010");
insert into sales values (10, "5/14/2010");
insert into sales values (10, "10/15/2010");
insert into sales values (10, "7/16/2010");
insert into sales values (10, "10/17/2010");
insert into sales values (10, "5/18/2010");
insert into sales values (10, "4/19/2010");
insert into sales values (10, "5/20/2010");
insert into sales values (10, "7/21/2010");
insert into sales values (10, "10/22/2010");
insert into sales values (10, "2/23/2010");
insert into sales values (10, "5/24/2010");
insert into sales values (10, "10/25/2010");
insert into sales values (10, "7/26/2010");
insert into sales values (10, "9/27/2010");
insert into sales values (10, "2/28/2010");
insert into sales values (10, "10/29/2010");
insert into sales values (10, "5/30/2010");
insert into sales values (10, "10/1/2010");
insert into sales values (10, "10/2/2010");
insert into sales values (10, "9/3/2010");
insert into sales values (10, "7/4/2010");
insert into sales values (10, "5/5/2010");
insert into sales values (10, "9/6/2010");
insert into sales values (10, "4/7/2010");
insert into sales values (10, "5/8/2010");
insert into sales values (10, "5/9/2010");
insert into sales values (10, "7/10/2010");
insert into sales values (10, "10/11/2010");
insert into sales values (10, "4/12/2010");
insert into sales values (10, "2/13/2010");
insert into sales values (10, "5/14/2010");
insert into sales values (10, "10/15/2010");
insert into sales values (10, "7/16/2010");
insert into sales values (10, "10/17/2010");
insert into sales values (10, "5/18/2010");
insert into sales values (10, "4/19/2010");
insert into sales values (10, "5/20/2010");
insert into sales values (10, "7/21/2010");
insert into sales values (10, "10/22/2010");
insert into sales values (10, "2/23/2010");
insert into sales values (10, "5/24/2010");
insert into sales values (10, "10/25/2010");
insert into sales values (10, "7/26/2010");
insert into sales values (10, "9/27/2010");
insert into sales values (10, "2/28/2010");
insert into sales values (10, "10/29/2010");
insert into sales values (10, "5/30/2010");
insert into sales values (10, "10/1/2010");
insert into sales values (10, "10/2/2010");
insert into sales values (10, "9/3/2010");
insert into sales values (10, "7/4/2010");
insert into sales values (10, "5/5/2010");
insert into sales values (10, "9/6/2010");
insert into sales values (10, "4/7/2010");
insert into sales values (10, "5/8/2010");
insert into sales values (10, "5/9/2010");
insert into sales values (10, "7/10/2010");
insert into sales values (10, "10/11/2010");
insert into sales values (10, "4/12/2010");
insert into sales values (10, "2/13/2010");
insert into sales values (10, "5/14/2010");
insert into sales values (10, "10/15/2010");
insert into sales values (10, "7/16/2010");
insert into sales values (10, "10/17/2010");
insert into sales values (10, "5/18/2010");
insert into sales values (10, "4/19/2010");
insert into sales values (10, "5/20/2010");
insert into sales values (10, "7/21/2010");
insert into sales values (10, "10/22/2010");
insert into sales values (10, "2/23/2010");
insert into sales values (10, "5/24/2010");
insert into sales values (10, "10/25/2010");
insert into sales values (10, "7/26/2010");
insert into sales values (10, "9/27/2010");
insert into sales values (10, "2/28/2010");
insert into sales values (10, "10/29/2010");
insert into sales values (10, "5/30/2010");
insert into sales values (10, "10/1/2010");
insert into sales values (10, "10/2/2010");
insert into sales values (10, "9/3/2010");
insert into sales values (10, "7/4/2010");
insert into sales values (10, "5/5/2010");
insert into sales values (10, "9/6/2010");
insert into sales values (10, "4/7/2010");
insert into sales values (10, "5/8/2010");
insert into sales values (10, "5/9/2010");
insert into sales values (10, "7/10/2010");
insert into sales values (10, "10/11/2010");
insert into sales values (10, "4/12/2010");
insert into sales values (10, "2/13/2010");
insert into sales values (10, "5/14/2010");
insert into sales values (10, "10/15/2010");
insert into sales values (10, "7/16/2010");
insert into sales values (10, "10/17/2010");
insert into sales values (10, "5/18/2010");
insert into sales values (10, "4/19/2010");
insert into sales values (10, "5/20/2010");
insert into sales values (10, "7/21/2010");
insert into sales values (10, "10/22/2010");
insert into sales values (10, "2/23/2010");
insert into sales values (10, "5/24/2010");
insert into sales values (10, "10/25/2010");
insert into sales values (10, "7/26/2010");
insert into sales values (10, "9/27/2010");
insert into sales values (10, "2/28/2010");
insert into sales values (10, "10/29/2010");
insert into sales values (10, "5/30/2010");
insert into sales values (10, "10/1/2010");
insert into sales values (10, "10/2/2010");
insert into sales values (10, "9/3/2010");
insert into sales values (10, "7/4/2010");
insert into sales values (10, "5/5/2010");
insert into sales values (10, "9/6/2010");
insert into sales values (10, "4/7/2010");
insert into sales values (10, "5/8/2010");
insert into sales values (10, "5/9/2010");
insert into sales values (10, "7/10/2010");
insert into sales values (10, "10/11/2010");
insert into sales values (10, "4/12/2010");
insert into sales values (10, "2/13/2010");
insert into sales values (10, "5/14/2010");
insert into sales values (10, "10/15/2010");
insert into sales values (10, "7/16/2010");
insert into sales values (10, "10/17/2010");
insert into sales values (10, "5/18/2010");
insert into sales values (10, "4/19/2010");
insert into sales values (10, "5/20/2010");
insert into sales values (10, "7/21/2010");
insert into sales values (10, "10/22/2010");
insert into sales values (10, "2/23/2010");
insert into sales values (10, "5/24/2010");
insert into sales values (10, "10/25/2010");
insert into sales values (10, "7/26/2010");
insert into sales values (10, "9/27/2010");
insert into sales values (10, "2/28/2010");
insert into sales values (10, "10/29/2010");
insert into sales values (10, "5/30/2010");
---------------------------