本案例以建設銀行為例
請將建行的交易明細表載下,並命名為ccb.txt
此時,你有兩種選擇:sqlldr or external table
㈠ sqlldr
因為網銀只有在win上才能用,所以如果你的os是linux/unix,那麼在ctl中必須指定字符集
讓utf-8可以顯示gb18030
① 建表
create table t_bank_invoice
( account_number number,
sub_number number,
transac_date date,
transac_address varchar2(600),
transac_comment varchar2(600),
currency varchar2(100),
remit varchar2(100),
in_amount number(20,2),
out_amount number(20,2),
balance number(20,2),
opposite_number number,
opposite_username varchar2(100),
all_comment varchar2(2000));
② 用sqlldr
[oracle@localhost ~]$ sqlldr hr/hr control=ccb.ctl
ccb.ctl如下:
[oracle@localhost ~]$ sqlldr hr/hr control=ccb.ctl
ccb.ctl如下:
load data
characterset zhs16gbk
infile 'ccb.txt'
discardfile 'ccb.dis'
into table t_bank_invoice
trailing nullcols
( account_number "11111111111",
sub_number "00000",
transac_date position(1:8) date(8) "yyyymmdd" terminated by ',',
transac_address position(10) char terminated by ',',
out_amount decimal external terminated by ',' nullif out_amount=blanks,
in_amount decimal external terminated by ',' nullif in_amount=blanks ,
balance decimal external terminated by ',' nullif balance=blanks,
opposite_number char terminated by ',',
opposite_username char terminated by ',',
currency char terminated by ',',
transac_comment char terminated by whitespace
)
③ 查詢表
當然、你可以在all_comment列個性化設定你的具體消費開支,比如,交**費多少錢、買衣服多少錢等等
㈡ external table
① 建立directory物件
sys@orcl> create directory dir as '/home/oracle/';
directory created.
sys@orcl> grant read,write on directory dir to public;
grant succeeded.
② 把ccb.txt放在dir下
③ 用sqlldr生成外部表的建立語句,並編輯ccb.log
編輯如下:
create table t_bank_invoice
( "account_number" varchar(255),
"sub_number" varchar(255),
"transac_date" date,
"transac_address" varchar2(600),
"out_amount" number(20,2),
"in_amount" number(20,2),
"balance" number(20,2),
"opposite_number" number,
"opposite_username" varchar2(100),
"currency" varchar2(100),
"transac_comment" varchar2(600)
)organization external
( type oracle_loader
default directory dir
access parameters
( records delimited by newline characterset zhs16gbk
badfile 'ccb1.bad'
discardfile 'ccb1.dis'
logfile 'ccb.log_xt'
readsize 1048576
fields ldrtrim
missing field values are null
reject rows with all null fields
("account_number" char(1),
"sub_number" char(1),
"transac_date" (1:8) char(8)
date_format date mask "yyyymmdd",
"transac_address" (10) char(255)
terminated by ",",
"out_amount" char(255)
terminated by ","
nullif ("out_amount" = blanks),
"in_amount" char(255)
terminated by ","
nullif ("in_amount" = blanks),
"balance" char(255)
terminated by ","
nullif ("balance" = blanks),
"opposite_number" char(255)
terminated by ",",
"opposite_username" char(255)
terminated by ",",
"currency" char(255)
terminated by ",",
"transac_comment" char(255)
terminated by whitespace
)) location
( 'ccb.txt'
))reject limit unlimited;
④
[oracle@localhost ~]$ cp ccb.log ccb.sql
⑤
hr@orcl> @ccb.sql
table created.
⑥ 查詢表
小結:如果您的存款驚人、或者經常訪問,明細比較大、外部表是個不錯的選擇
但不論是sqlldr還是external table
都是為了方便我們理財、讓我們的生活更厚重和精彩
新手如何快速掌握金融理財知識?直播來幫你!
隨著人們收入的提高,理財成為人們新的投資方式。然而對於新手來說,要先學會理財才能投資,不然容易竹籃打水一場空。那麼新手如何快速掌握金融理財知識呢?答曰 金融理財直播。目前人們學習理財主要是通過理財書籍 上網搜尋相關資料 諮詢相關金融人士來獲取理財知識,我們來說說這些學習方式的不足吧。1 遇到晦澀難懂...
讓使用者幫你把產品做得更好
在網際網路產品的開發和運營中,及時了解廣大的實際使用者的想法是極其重要的一件事情,任何產品都不可能一直採用閉門造車的方式向前走。使用者會提出各種各樣問題 建議,以及你想也想不到的神邏輯,作為產品開發者 運營者,你不一定要完全按照使用者想的說的來做,但是可以從中汲取靈感,或者獲知你的產品中需要優化的點...
理財新思路 讓銀行為你打工
對於大多數人而言,他們去銀行大多是在那裡存錢或者取錢。而今一批聰明人,卻在進出銀行的當兒,學會了賺錢。20萬7個月變400萬 銀行的人說起陳先生個個都佩服不已,雖然不知道他的具體職業,但大家都知道他的賺錢本領是從他們銀行學會的。當初銀行的工作人員向這位客戶推薦他們的外匯期權業務,想幫他把外匯從單一的...