PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
19832 03/06/30 09:46:43 RE(9):PB6.5: sql*loaderを繰り返し実行したい場合について By teruteru70528
19820 03/06/27 11:14:20 RE(8):PB6.5: sql*loaderを繰り返し実行したい場合について By Taka
19812 03/06/25 17:36:20 RE(7):PB6.5: sql*loaderを繰り返し実行したい場合について(自己レス 一応解決?) By teruteru70528
19810 03/06/25 16:09:39 RE(6):PB6.5: sql*loaderを繰り返し実行したい場合について(まだうまくいきません) By teruteru70528
19804 03/06/24 17:47:08 RE(5):PB6.5: sql*loaderを繰り返し実行したい場合について By teruteru70528
19802 03/06/24 17:27:00 RE(4):PB6.5: sql*loaderを繰り返し実行したい場合について By teruteru70528
19797 03/06/24 16:56:19 RE(3):PB6.5: sql*loaderを繰り返し実行したい場合について By M.M
19795 03/06/24 16:31:58 RE(2):PB6.5: sql*loaderを繰り返し実行したい場合について By teruteru70528
19793 03/06/24 16:26:39 RE(1):PB6.5: sql*loaderを繰り返し実行したい場合について By M.M
19789 03/06/24 14:05:50 PB6.5: sql*loaderを繰り返し実行したい場合について By teruteru70528

カテゴリ:スクリプトの記述
日付:2003年06月24日 14:05 発信者:teruteru70528
題名:PB6.5: sql*loaderを繰り返し実行したい場合について

sql*loaderをLOOP処理の中で記述して繰り返し処理を行い、最初のsql*loader
の実行が終了してから次のsql*loaderを実行したいのです。現在sql*loaderが
書き出すlogファイルの大きさが0より大きいかを判断してから次のsql*loader
を起動するという方法をとっていますが、この方法だと完全にsql*loaderの処理が
終わっていなくても0より大きいと次の処理に進んでしまいます。sql*loaderの
書き出すlogを1つのファイル(txt)にまとめて書き出したいのですが、1番最初の
sql*loaderの処理が長くかかる場合、そのログが飛ばされてしまいます。
正常に処理される場合(たまたまログの書き出しが早かった?)とそうでない場合が
あります(50%くらいの確率で)。
以下のようなコーディングをしています。
何かよい方法はないでしょうか。コーディングに問題があればご指摘願います。
****************************
ib_stsはsql*loaderのファイルが0より大きい場合tureになります。
sLogText2はsql*loaderで書き出されるログです。
iLogAppendはsql*loaderで書き出されるログをまとめたファイルです。

Timer(1,w_kakunin)
FOR lldrcnt = 1 TO 3
sqlldr実行
DO UNTIL ib_sts = true
yield()
LOOP
ib_sts = false
iOpenLLog = FileOpen(sLogText2,StreamMode!)
lReadSts = FileRead(iOpenLLog,sLogbuf)  
FileWrite(iLogAppend,sLogbuf)
FileClose(iOpenLLog)
NEXT
Timer(0,w_kakunin)
FileClose(iLogAppend)
FileClose(iOpenLLog)



付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows 2000
DBMS Oracle SQL*Net 8
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)

PowerSpaceの運営は、パワーフューチャー株式会社が行っております。
Copyright © 2013 Power Future Co., Ltd.