Tworzenie Oracle Warehouse Builder Workflow za pomocą Oracle
Transkrypt
Tworzenie Oracle Warehouse Builder Workflow za pomocą Oracle
Tworzenie Oracle Warehouse Builder Workflow za pomocą Oracle Workflow Configuration Assistant Na koniec należy nadać przywilej “EXECUTE ANY PROCEDURE” użytkownikowi owf_mgr [oracle@pcb21 ~]$ sqlplus / as sysdba SQL> @/home/oracle/OWB1/sql/grant_to_owf_mgr.sql # Zawartość skryptu @/home/oracle/OWB1/sql/grant_to_owf_mgr.sql /* Log in as sys/oracle as sysdba*/ grant execute any procedure to owf_mgr; commit; exit; W razie potrzeby można dodać inny język do danego przepływu Musimy jeszcze wykonać pomocnicze operacje przygotowujące do ćwiczeń 1. Utworzenie nowych użytkowników po zalogowaniu jako sys as sysdba SQL > @/home/oracle/OWB1/setup/sql/create_users.sql # Zawartość skryptu @/home/oracle/OWB1/setup/sql/create_users.sql create user XSALES identified by XSALES default tablespace users temporary tablespace temp / grant connect, resource to XSALES / create user DISCO identified by DISCO default tablespace users temporary tablespace temp / grant connect, resource to DISCO / create user SALES_WH identified by SALES_WH default tablespace users temporary tablespace temp / grant connect, resource to SALES_WH / create user SALES_AW identified by SALES_AW default tablespace users temporary tablespace temp / grant connect, resource to SALES_AW / 2. Wykonanie importu danych z pliku importu XWEEK.DMP do schematu XSALES 3. Utworzymy kopie tabel użytkownika HR, kończąc nazwę każdej kopii przyrostkiem ”_bkp”, tzn. np. kopia tabeli departments powinna się nazywać departments_bkp. 4. Zmodyfikujemy schemat HR, niszcząc jego wybrane więzy integralności SQL> connect hr/hr SQL> @/home/oracle/OWB1/setup/sql/DP_modify_HR.sql # Zawartość skryptu @/home/oracle/OWB1/setup/sql/DP_modify_HR.sql ----- If the script has been run already -- or attempting to run in schema other than HR -- it will exit at the first statement -WHENEVER SQLERROR EXIT -- Modify for Domains -ALTER TABLE JOB_HISTORY DROP CONSTRAINT JHIST_JOB_FK; ALTER TABLE EMPLOYEES DROP CONSTRAINT EMP_JOB_FK; ALTER TABLE JOBS DROP CONSTRAINT JOB_ID_PK; DROP INDEX JOB_ID_PK; ALTER TRIGGER HR.UPDATE_JOB_HISTORY DISABLE; INSERT INTO JOBS (JOB_ID, JOB_TITLE, MIN_SALARY, MAX_SALARY) VALUES ('MK_REP', 'Marketing Representative', 4000, 9000 ); INSERT INTO EMPLOYEES ( EMPLOYEE_ID, FIRST_NAME, LAST_NAME, EMAIL, PHONE_NUMBER, HIRE_DATE, JOB_ID, SALARY, COMMISSION_PCT, MANAGER_ID, DEPARTMENT_ID ) VALUES ( 1000, 'Alexander', 'Smith', 'ASMITH', '515.127.4562', TO_Date( '05/18/1995 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM') , 'PU_CLIRK', 3100, NULL, 114, 30); INSERT INTO EMPLOYEES ( EMPLOYEE_ID, FIRST_NAME, LAST_NAME, EMAIL, PHONE_NUMBER, HIRE_DATE, JOB_ID, SALARY, COMMISSION_PCT, MANAGER_ID, DEPARTMENT_ID ) VALUES ( 1001, 'Peter', 'Johnson', 'PJOHNSON', '011.44.1344.129268', TO_Date( '01/30/1997 12:00:00 AM', 'MM/DD/YYYY HH:MI:SS AM') , 'SA_REPP', 10000, 0.3, 145, 80); COMMIT; UPDATE EMPLOYEES SET JOB_ID = 'PU_CLERK' WHERE JOB_ID IN ('SA_MAN', 'ST_MAN', 'IT_PROG', 'FI_ACCOUNT'); COMMIT; -- Modify for Functional Dependency -ALTER TABLE EMPLOYEES ADD (DEPARTMENT_NAME VARCHAR2(30)); UPDATE EMPLOYEES E SET E.DEPARTMENT_NAME = (SELECT DEPARTMENT_NAME FROM DEPARTMENTS D WHERE D.DEPARTMENT_ID = E.DEPARTMENT_ID); COMMIT; exit 5. Nadamy przywileje nowym użytkownikom SQL> connect /as sysdba SQL > @/home/oracle/OWB1/setup/sql/grant_xsales.sql # Zawartość skryptu @/home/oracle/OWB1/setup/sql/grant_xsales.sql grant select on xsales.PRODUCTS to PUBLIC; commit; exit; SQL> Connect sys/oracle as sysdba SQL > @/home/oracle/OWB1/setup/create_privileges.sql # Zawartość skryptu @/home/oracle/OWB1/setup/sql/create_privileges.sql grant create table, create view, create sequence, create procedure, create session to disco; commit; exit; Uruchomienie klienta Oracle Warehouse Builder