質問するログイン新規登録

回答編集履歴

5

修正

2018/04/06 01:32

投稿

sazi
sazi

スコア25437

answer CHANGED
@@ -17,7 +17,7 @@
17
17
  私が良く行うのは、エラーになりようがないテーブル(キーや制約の無い全てtext属性)を用意して取り込み、そこでエラーチェックなり加工するなりを行って、本来のテーブルへ登録するようにしています。
18
18
  SQLのみで行えることや、大量データの場合CSVに対してよりも高速、他のデータとの整合性チェック可、というのが利点です。
19
19
 
20
- 因みに考えられるエラー(チェックすべき項目)としては以下が考えられます。
20
+ 因みにエラー(チェックすべき項目)としては以下が考えられます。
21
21
  ・一意制約違反
22
22
  ・NotNull制約違反
23
23
  ・属性エラー(数値項目に文字)

4

追記

2018/04/06 01:32

投稿

sazi
sazi

スコア25437

answer CHANGED
@@ -15,4 +15,12 @@
15
15
  [【厳選】Windows用のCSVファイルエディタ【最強のCSVエディタ】](https://matome.naver.jp/odai/2135167399342052801)
16
16
 
17
17
  私が良く行うのは、エラーになりようがないテーブル(キーや制約の無い全てtext属性)を用意して取り込み、そこでエラーチェックなり加工するなりを行って、本来のテーブルへ登録するようにしています。
18
- SQLのみで行えることや、大量データの場合CSVに対してよりも高速というのが利点です。
18
+ SQLのみで行えることや、大量データの場合CSVに対してよりも高速、他のデータの整合性チェック可、というのが利点です。
19
+
20
+ 因みに考えられるエラー(チェックすべき項目)としては以下が考えられます。
21
+ ・一意制約違反
22
+ ・NotNull制約違反
23
+ ・属性エラー(数値項目に文字)
24
+ ・桁あふれ(文字なら桁数、数値ならオーバーフロー)
25
+ ・エスケープ文字使用(区切り記号と同じ記号を文字列中で使用)
26
+ ※最後のエスケープ文字使用についてはチェック状況に応じた臨機応変さが必要なことが多い。

3

修正

2018/04/06 01:22

投稿

sazi
sazi

スコア25437

answer CHANGED
@@ -14,5 +14,5 @@
14
14
  テキストエディタは論外なので、もしエクセルでやられているとかでしたら、CSV専用のエディタを使われてはどうでしょう。
15
15
  [【厳選】Windows用のCSVファイルエディタ【最強のCSVエディタ】](https://matome.naver.jp/odai/2135167399342052801)
16
16
 
17
- 私が良く行うのは、エラーになりようがないテーブル(キーや制約の無い全てtext属性)を用意して取り込み、そこでエラーチェックなり加工するなりを行って、本来のテーブルへ登録するようにしています。
17
+ 私が良く行うのは、エラーになりようがないテーブル(キーや制約の無い全てtext属性)を用意して取り込み、そこでエラーチェックなり加工するなりを行って、本来のテーブルへ登録するようにしています。
18
18
  SQLのみで行えることや、大量データの場合CSVに対してよりも高速というのが利点です。

2

追記

2018/04/06 01:10

投稿

sazi
sazi

スコア25437

answer CHANGED
@@ -10,7 +10,7 @@
10
10
 
11
11
  そうは言っても、エラーチェックも兼用出来たら、というのは理解できます。
12
12
 
13
- 何度も行うのが効率悪いという事ですが、多分CSVの編集に苦労されているのではないでしょうか。
13
+ 何度も行うのが効率悪いという事ですが、1000件程度でしたらSQL*Loaderの処理にそんなに時間は掛からないので、多分CSVの編集に苦労されているのではないでしょうか。
14
14
  テキストエディタは論外なので、もしエクセルでやられているとかでしたら、CSV専用のエディタを使われてはどうでしょう。
15
15
  [【厳選】Windows用のCSVファイルエディタ【最強のCSVエディタ】](https://matome.naver.jp/odai/2135167399342052801)
16
16
 

1

追記

2018/04/06 01:09

投稿

sazi
sazi

スコア25437

answer CHANGED
@@ -1,4 +1,18 @@
1
1
  ERRORS=-1とすると無制限になります。
2
2
  ```SQL
3
3
  OPTIONS (ERRORS=-1)
4
- ```
4
+ ```
5
+ 追記
6
+ ---
7
+ > 「同一レコードの複数のカラムにそれぞれエラーがあった場合でも、一回の処理で全て検出する」
8
+
9
+ SQL*Loaderは高速にデータを取り込むのを目的とした処理ですから、一つでもエラー検知したら行をSKIPするのは、当然の仕様だと思います。
10
+
11
+ そうは言っても、エラーチェックも兼用出来たら、というのは理解できます。
12
+
13
+ 何度も行うのが効率悪いという事ですが、多分CSVの編集に苦労されているのではないでしょうか。
14
+ テキストエディタは論外なので、もしエクセルでやられているとかでしたら、CSV専用のエディタを使われてはどうでしょう。
15
+ [【厳選】Windows用のCSVファイルエディタ【最強のCSVエディタ】](https://matome.naver.jp/odai/2135167399342052801)
16
+
17
+ 私が良く行うのは、エラーになりようがないテーブル(キーや制約の無い全全てtext属性)を用意して取り込み、そこでエラーチェックなり加工するなりを行って、本来のテーブルへ登録するようにしています。
18
+ SQLのみで行えることや、大量データの場合CSVに対してよりも高速というのが利点です。