質問編集履歴
2
修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -322,7 +322,9 @@
|
|
322
322
|
|
323
323
|
### 補足情報(FW/ツールのバージョンなど)
|
324
324
|
設定ファイルに下記のようにInsert文の雛形をおいています。
|
325
|
+
```sql
|
325
326
|
CSVファイル名=INSERT INTO "テーブル名" ("カラム名1","カラム名2",‥) values (?,?,‥)
|
327
|
+
```
|
326
328
|
cmdファイルをたたいてVBSを呼び出しています。
|
327
329
|
設定ファイル内のCSVファイル名とディレクトリ内のCSVファイルを比較して、マッチングしたらInsert文を引っ張ってきて、CSVファイルの読込を始め、上記問題のソースでパラメータに実際のデータをセットしています。
|
328
330
|
|
1
追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
|
4
4
|
OracleDBにADODB経由でアクセスし、バインド変数でカラムデータを指定して、
|
5
5
|
Insert文を実行しています。
|
6
|
-
データ型がNumberのカラムに空白でない文字列を指定すると、
|
6
|
+
データ型がNumberのカラムに空白でない文字列を指定すると、Nullが入ってしまう原因を知りたい。
|
7
7
|
|
8
8
|
### 発生している問題・エラーメッセージ
|
9
9
|
データ型がNumberのカラムに空白でない文字列を指定すると、
|
@@ -196,15 +196,29 @@
|
|
196
196
|
'------------------------------------------------------------'
|
197
197
|
' SQL実行時エラーの確認
|
198
198
|
'------------------------------------------------------------'
|
199
|
+
~追記~
|
199
200
|
If Err.Number <> 0 Then
|
200
201
|
'--------------------------------------------------------'
|
201
202
|
'SQLエラー情報のログ出力
|
202
203
|
'--------------------------------------------------------'
|
204
|
+
Set objADOErrItem = objADO.Errors.Item(0)
|
203
|
-
~
|
205
|
+
~エラーログ出力~
|
206
|
+
If objADOErrItem.NativeError = "ORA-00060" Then
|
207
|
+
END_CODE = ERR_DeadLouk
|
208
|
+
Else
|
209
|
+
END_CODE = ERR_SQL
|
210
|
+
End If
|
211
|
+
Set objADOErrItem = Nothing
|
204
212
|
'--------------------------------------------------------'
|
205
213
|
'INSERT失敗処理
|
206
214
|
'--------------------------------------------------------'
|
215
|
+
objCsvDataFile.Close
|
216
|
+
objADO.RollbackTrans
|
217
|
+
Call NgInsert( objDataFile.Path )
|
218
|
+
ExitProc ( END_CODE )
|
219
|
+
objCMD.Close
|
220
|
+
Set objCMD = Nothing
|
207
|
-
|
221
|
+
Exit Do
|
208
222
|
End If
|
209
223
|
Set objCMD = Nothing
|
210
224
|
' CSV読込カウンタ
|
@@ -234,7 +248,21 @@
|
|
234
248
|
'---------------------------------------------------------------------
|
235
249
|
' エラー処理関数
|
236
250
|
'---------------------------------------------------------------------
|
251
|
+
~追記~
|
252
|
+
Sub ExitProc(END_CODE)
|
253
|
+
'データベースを閉じる
|
254
|
+
objCMD.Close
|
255
|
+
objCsvDataFile.Close
|
256
|
+
If CONTROL_FLAG = 0 Then
|
257
|
+
objADO.Close
|
258
|
+
Set objDataFile = Nothing
|
259
|
+
Set objDataFolder = Nothing
|
260
|
+
Set objFSO = Nothing
|
261
|
+
Set objLogFile = Nothing
|
237
|
-
|
262
|
+
Set objCsvDataFile = Nothing
|
263
|
+
WScript.Quit(END_CODE)
|
264
|
+
End If
|
265
|
+
End Sub
|
238
266
|
'---------------------------------------------------------------------
|
239
267
|
' INSERT成功処理
|
240
268
|
'---------------------------------------------------------------------
|