Load data From one database to another database or one schema to another schema within the database
1) define the data servers under topology tab for associate technologies-->name and DBA privileged username and password, JDBC connection
2) define physical schema for source data server---> DB schema name where database tables are present along with work schema. usually a dedicated work schema is used but one can use DB schema but this is not recommended
3) define physical schema for target data server ---> DB schema name of target database where data will be loaded from source schema along with work schema
4) define logical schema for both physical schemas and link them along with context
5) define model in designer tab for source and target schema and reverse engineering source and target tables with the help of logical schema
6) create a project in designer tab import LKM and IKM for specified technology
7) create a mapping by dragging source and target table from models
8) now go to logical tab within mapping and select integration type under target accordingly ie control append, incremental update, slowly changing dimension
9) go to physical tab (next to logical) and click on staging table and select LKM ie.sql to sql or sql to oracle
10) click on target table and select IKM ie IKM oracle insert.global
11) execute the mapping if done the data will be available in target schema
NOTE-- if LKM and IKM is not imported in project ODI will take default LKM and IKM and mapping may not execute because LKM take default LKM ie LKM oracle to oracle (DBLINK) default IKM does not affect mapping execution
error likely to occur
ODI-1227: Task Create view/table on source-LKM Oracle to Oracle (DBLINK)- fails on the source connection scott source demo.
Caused By: java.sql.SQLSyntaxErrorException: ORA-00942: table or view does not exist
ODI-1228: Task Load EMP1-IKM Oracle Insert- fails on the target connection target Hr Demo.
Caused By: java.sql.SQLSyntaxErrorException: ORA-02083: database name has illegal character ' '