awk 解決 sqlldr源資料換行問題

2021-06-03 20:55:46 字數 759 閱讀 1057

awk 解決 sqlldr源資料換行問題

當資料從資料庫以文字的方式匯出時,換行問題是我們經常遇到,又比較頭疼的。當我們不處理sqlldr直接匯入的時候,原本一行資料就有可能變為多行,甚至匯入報錯。

這裡我寫了個awk指令碼處理這類問題,效率也還不錯(當然你也可以在sqlldr的控制檔案裡面做處理,但是換行原因以及其它字元的問題—我遇到的是俄文本元)處理並不是很理想,感覺還是awk處理完美一點,下面把**貼出來,共享下。

檔名:datatrans.sh

#!/bin/ksh

#       解決局方資料換行問題;

#       fgnum 每行實際分隔符數

# create by lizhiming 2011-11-10

fromtable=$1;

totable=$2;

fgnum=$3;

awk -v num=$fgnum 'begin

# 當當前分隔符數 大於等於 實際分隔符數時,立馬換行並累計分隔符數歸零;

if(fg[cur]>=num)

else

else                           }}

end{} ' $fromtable > $totable

執行 sh datatrans.sh  fromtablename.dat totablename.dat  columnsnum

# 三個引數 原始檔名稱 ,目標檔名 實際分隔符數(我**裡面是以「|」為分隔符)

Atomikos解決多資料來源事務

org.springframework.boot spring boot starter jta atomikos com.baomidou mybatis plus boot starter 3.5.0 com.alibaba druid spring boot starter 1.2.8 資料來...

資料傾斜解決方案之聚合源資料

資料傾斜的解決,跟之前講解的效能調優,有一點異曲同工之妙。效能調優,跟大家講過乙個道理,重劍無鋒 效能調優,調了半天,最有效,最直接,最簡單的方式,就是加資源,加並行度,注意rdd架構 復用同乙個rdd,加上cache快取 shuffle jvm等,次要的。資料傾斜,解決方案,第乙個方案和第二個方案...

使用Oracle資料來源的報表輸出列印解決方案

oracle10g資料庫並沒有提供有關報表輸出列印的套件。在甲骨文公司提供的中介軟體系列產品中有一款 這款產品是 免費的,可以將其部署在 j2ee應用伺服器上,報表資料以標準格式 pdf html xm l rtf excel 分發輸出。此款產品無須進行安裝,並且不需要大量的學習。它可以清晰劃分資料...