久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

SQL*Loader:從文件導(dǎo)入數(shù)據(jù)庫(kù)

 mjsws 2017-08-20

之前寫(xiě)過(guò)一篇 SQL*Loader 的博客, 介紹了這個(gè)工具是什么, 怎么用, 最后說(shuō) metalink 里面的這篇Note: 1019523.6 可以自動(dòng)產(chǎn)生控制文件. 但是根據(jù)我的測(cè)試, 這篇Note 里面的腳本產(chǎn)生的控制文件是錯(cuò)的. 這篇博客給出我修改過(guò)的腳本, 和詳細(xì)步驟:

同一個(gè)數(shù)據(jù)庫(kù), 可以使用下面這種格式:

create table yu_mmt_01 as select * from mtl_material_transactions where 1=2;

select * from yu_mmt_01;

insert into yu_mmt_01 select * from mtl_material_transactions where rownum < 100;

如果不同數(shù)據(jù)庫(kù)之間需要復(fù)制數(shù)據(jù), 可以先 select 出數(shù)據(jù), 然后用 sql developer 生成 insert/loader 語(yǔ)句, 直接在目標(biāo)數(shù)據(jù)庫(kù)里面跑這個(gè)腳本.

如果數(shù)據(jù)量很大, 就需要借助 SQL*Loader 這個(gè)工具了.

首先要確保 source table 和 destination table 兩個(gè)表結(jié)構(gòu)是一樣的

create table yu_mmt_01 as select * from mtl_material_transactions where 1=2;

copy 下面的代碼保存成文件generate_ctl.sql, 上傳到/var/tmp 目錄下, 用sqlplus @generate_ctl.sql 運(yùn)行這個(gè)腳本, 可以在這個(gè)目錄下獲得 .ctl 控制文件

set echo off

set heading off

set verify off

set feedback off

set show off

set trim off

set pages 0

set concat on

set lines 300

set trimspool on

set trimout on

ALTER SESSION SET NLS_LANGUAGE='AMERICAN';

spool mtl_material_transactions.ctl

select 'LOAD DATA'||chr (10)||

'INFILE '''||lower (www.dadiqp.info)||'.dat'''||chr (10)||

'INTO TABLE '||' YU_MMT_01 '||chr (10)||

'APPEND '||chr (10)||

'FIELDS TERMINATED BY '','''||chr (10)||

'OPTIONALLY ENCLOSED BY  ''"'' '||chr (10)||

'TRAILING NULLCOLS'||chr (10)||'('

from  all_tables

where  table_name = upper ('mtl_material_transactions');

select decode (column_id, 1, ' ', ' , ')||

rpad (column_name, 33, ' ')||

decode (data_type, 'VARCHAR2', 'CHAR NULLIF ('||column_name||'=BLANKS)',

'FLOAT', 'DECIMAL EXTERNAL NULLIF('||column_name||'=BLANKS)',

'NUMBER', decode (data_precision, 0, 'INTEGER EXTERNAL NULLIF ('||column_name||'=BLANKS)',

decode (data_scale, 0, 'INTEGER EXTERNAL NULLIF ('||column_name||'=BLANKS)',

'DECIMAL EXTERNAL NULLIF ('||column_name||'=www.yinpinxian.com)')),

'DATE', 'TIMESTAMP "DD-MON-YY HH.MI.SS.FF9 AM" NULLIF ('||column_name||'=BLANKS)', null)

from  all_tab_columns

where  table_name = upper ('mtl_material_transactions')

order  by column_id;

select ')'

from  sys.dual;

spool  off

.

/

設(shè)置 sql developer 數(shù)據(jù)庫(kù)編碼集: 首選項(xiàng) -> 數(shù)據(jù)庫(kù) -> NLS, 全部設(shè)置 AMERICAN

從source db 里 select 出需要的數(shù)據(jù), 保存成 .csv 格式,

select * from mtl_material_transactions where rownum < 100;

刪掉第一行 column 名字. 命名為 mtl_material_transactions.dat, 上傳到 /var/tmp 目錄

在 destination db 運(yùn)行 SQLLDR 命令: sqlldr apps/apps control=mtl_material_transactions.ctl data=mtl_material_transactions.dat

需要注意的是, sql developer 導(dǎo)出的 date 格式, 全部是 timestamp 格式的, 所以需要對(duì) date 格式進(jìn)行調(diào)整。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀(guān)點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多