1. Utworzyć tabelę PURCHASES partycjonowaną zakresowo, z czterema partycjami. Schemat PURCHASES przedstawiono poniżej. Pierwsze trzy partycje PURCHASES mają przechowywać dane o sprzedaży odpowiednio: w styczniu 2002, lutym 2002 i marcu 2002. Czwarta partycja ma przechowywać pozostałe dane o sprzedaży.

 

PURCHASES

Name                                      Null?    Type

----------------------------------------- -------- ------------

PRODUCT_ID                                NOT NULL VARCHAR2(8)

TIME_KEY                                  NOT NULL DATE

CUSTOMER_ID                               NOT NULL VARCHAR2(10)

PURCHASE_DATE                                      DATE

PURCHASE_TIME                                      NUMBER(4)

PURCHASE_PRICE                                     NUMBER(6,2)

SHIPPING_CHARGE                                    NUMBER(5,2)

STATE_ID                                           VARCHAR2(2)

TODAY_SPECIAL_OFFER                                VARCHAR2(1)

 

2. Dodać do tabeli PURCHASES nową partycję przechowującą rekordy sprzedaży z kwetnia 2002.

 

3. Utworzyć tabelę PURCHASES1 partycjonowaną haszowo, z trzema partycjami. Kluczem partycjonującym jest atrybut product_id. PURCHASES1 posiada identyczny schemat jak tabela PURCHASES.

 

4. Utworzyć tabelę REGIONAL_SALES partycjonowaną listowo. Schemat REGIONAL_SALES przedstawiono poniżej. Tabela ma posiadać 6 partycji, których atrybutem partycjonującym jest state. Nazwy poszczególnych partycji i zbiory wartości atrybutu state przedstawiono poniżej.

 

NORTHEAST -> 'NH', 'VT', 'MA', 'RI', 'CT'

SOUTHEAST -> 'NC', 'GA', 'FL'

NORTHWAST -> 'WA', 'OR'

MIDWEST -> 'IL', 'WI', 'OH'

WEST -> 'CA', 'NV', 'AZ'

OTHERSTATES -> pozostałe

 

REGIONAL_SALES

Name                                      Null?    Type

----------------------------------------- -------- ------------

STATE                                     NOT NULL VARCHAR2(2)

STATE_NAME                                NOT NULL VARCHAR2(20)

PRODUCT_ID                                NOT NULL VARCHAR2(8)

PRODUCT_SALE                               NOT NULL NUMBER(8)

 

5. Utworzyć indeks globalny bez perfiksu na atrybucie PURCHASES.PRODUCT_ID. Indeks ma być podzielony na trzy partycje. Pierwsza o wartościach product_id < 'SP1000', druga o wartościach product_id < 'SP2000', a trzecia o wartościach product_id >='SP2000'.

 

6. Utworzyć tabelę PURCHASES_JAN2002 jako kopię tabeli ABD_TEST.PURCHASES (create table as select), zawierającą wyłącznie dane o sprzedaży ze stycznia 2002. Wymienić dane między tabelą PURCHASES_JAN2002, a partycją PURCHASES_JAN2002, tabeli PURCHASES (utworzonej w ćwiczeniu 1).

 

7. Wczytać do tabeli PURCHASES informacje o sprzedaży w lutym 2002. Źródłem danych jest tabela ABD_TEST.PURCHASES. Odczytać zawartość partycji PURCHASES_FEB2002.

 

8. Korzystając ze słownika bazy danych wyświetlić informacje o wszystkich:

·       partycjach tabeli PURCHASES,

·       partycjonowanych indeksach.