Oracle から PostGreSQL に移行中です。私が見つけた 1 つの問題は、"," を "." に置き換える必要があることです。数値の場合。
例えば
Insert into DAILY_DATA_READING (READING_ID,MG_ID,DAILY_READING_DATE,ACQUISITION_DATE,PUBLISHED,PUBLISHING_DATE,POD_ID,VB_DAILY,VM_DAILY,VB_TOT,VM_TOT,VM_TOT_AL,CONV_QMAX_FLOW_RATE,GATH_CONV_QMAX_FLOW_RATE_DATE,RECORD_VALIDITY,PARTITION_INDEX)
values ('1028','99990000000010001',to_timestamp('16-OCT-12 06:00:00,000000000','DD-MON-RR HH24:MI:SS,FF'),to_timestamp('16-OCT-12 08:27:10,704000000','DD-MON-RR HH24:MI:SS,FF'),null,null,'99990000000010','13','48','93','234','35',
'101,4000015258789',to_timestamp('15-OCT-12 12:20:00,000000000','DD-MON-RR HH24:MI:SS,FF'),'S','10');
この例では、101,4000015258789を101.4000015258789に置き換える必要があります。「、」を検索し、その後に8桁が続き、それを「。」に置き換える単純なテキストスキャンを試しました。しかし、タイムスタンプ列も置き換えました。
INSERT ステートメントに含まれる 14 番目のフィールドだけを置き換える正規表現を作成することは可能ですか?
どうもありがとう