一,實施步驟:
1,整理源數據庫中表,索引,視圖,及存儲過程。計劃導入的先後順序。
2,計劃從sql server 到 oracle 數據類型的對應及轉換,特別注意日期類型。
3,用 sql server 中的創建角本工具生成一些數據庫對象的創建角本。
4,用 sql server 中的導入導出工具導出表中的數據到文本文件中。
5,用 Oracle sql*loader 裝載數據。
二,結論:
1,從中觀察到:一個 20648 行的表,大約要用 30M 左右的空間。
The Control File Script :
-- Import lk_job_register table
-- Created 2005-08-23
-- OPTIONS (skip=5000 )
LOAD DATA
INFILE 'D:pps_to_oracledatalk_job_register.txt'
BADFILE 'D:pps_to_oraclebad.bad'
REPLACE
INTO TABLE lk_job_register
--TRAILING NULLCOLS
fields terminated by ',' optionally enclosed by '"'
( emp_id char ,
card_no char ,
company char ,
faculty char ,
department char ,
team char ,
position char ,
rank char ,
emp_type char ,
factory_time date 'yyyy-mm-dd:hh24:mi:ss',
remark char ,
bed_no char ,
fl_no char ,
first_date date 'yyyy-mm-dd:hh24:mi:ss',
lk_num integer external,
sch_no char ,
card_clock_id char ,
probation integer external,
salary decimal external ,
ot_rate decimal external ,
housing_allowance decimal external ,
mess_allowance decimal external ,
togae_allowance decimal external ,
other_allowance decimal external ,
month_bonus char ,
double_bonus char ,
year_bonus char ,
mess char ,
compo char ,
tax decimal external ,
increase decimal external ,
employment_permit decimal external ,
overhead_expenses decimal external ,
other decimal external ,
endowment_insurance decimal external ,
compo_insurance decimal external ,
hospitalization_insurance decimal external ,
hours_day decimal external ,
day_month decimal external ,
dimission_salary decimal external ,
dimission_salary_state char ,
bank_no char ,
bank_batno char ,
bank_no_state char ,
peixun_date integer external,
card_clock_id1 char ,
card_clock_id2 char ,
leaving_date date 'yyyy-mm-dd:hh24:mi:ss',
changemonth_date date 'yyyy-mm-dd:hh24:mi:ss',
on_tax char ,
peixun_type char ,
peisun_sdate date 'yyyy-mm-dd:hh24:mi:ss',
peixun_edate date 'yyyy-mm-dd:hh24:mi:ss',
hourly_rate decimal external ,
pro_ot_rate decimal external ,
machine_no char
)
[@more@] -- Created 2005-08-23
-- OPTIONS (skip=5000 )
LOAD DATA
INFILE 'D:pps_to_oracledatalk_job_register.txt'
BADFILE 'D:pps_to_oraclebad.bad'
REPLACE
INTO TABLE lk_job_register
--TRAILING NULLCOLS
fields terminated by ',' optionally enclosed by '"'
( emp_id char ,
card_no char ,
company char ,
faculty char ,
department char ,
team char ,
position char ,
rank char ,
emp_type char ,
factory_time date 'yyyy-mm-dd:hh24:mi:ss',
remark char ,
bed_no char ,
fl_no char ,
first_date date 'yyyy-mm-dd:hh24:mi:ss',
lk_num integer external,
sch_no char ,
card_clock_id char ,
probation integer external,
salary decimal external ,
ot_rate decimal external ,
housing_allowance decimal external ,
mess_allowance decimal external ,
togae_allowance decimal external ,
other_allowance decimal external ,
month_bonus char ,
double_bonus char ,
year_bonus char ,
mess char ,
compo char ,
tax decimal external ,
increase decimal external ,
employment_permit decimal external ,
overhead_expenses decimal external ,
other decimal external ,
endowment_insurance decimal external ,
compo_insurance decimal external ,
hospitalization_insurance decimal external ,
hours_day decimal external ,
day_month decimal external ,
dimission_salary decimal external ,
dimission_salary_state char ,
bank_no char ,
bank_batno char ,
bank_no_state char ,
peixun_date integer external,
card_clock_id1 char ,
card_clock_id2 char ,
leaving_date date 'yyyy-mm-dd:hh24:mi:ss',
changemonth_date date 'yyyy-mm-dd:hh24:mi:ss',
on_tax char ,
peixun_type char ,
peisun_sdate date 'yyyy-mm-dd:hh24:mi:ss',
peixun_edate date 'yyyy-mm-dd:hh24:mi:ss',
hourly_rate decimal external ,
pro_ot_rate decimal external ,
machine_no char
)