2017-03-24 168 views
0

ストレートフォワード質問..Oracle SQL * LoaderのERRORSを設定できる最大値は何ですか?

Oracleの10の状態のドキュメント:

Oracle 10g sql*loader documentation

(注、私はそれが最も便利だったので、私はOracleの10のための答えを取るだろうから10gにリンクされ、 /またはOracle 11のいずれかの方法は問題ありません - 私はそれが同じ答えになると思う - だから両方のタグを追加しました)。

ERRORS (errors to allow) Default: To see the default value for this parameter, invoke SQLLoader without any parameters, as described in Invoking SQLLoader.

ERRORS specifies the maximum number of insert errors to allow. If the number of errors exceeds the value specified for ERRORS, then SQL*Loader terminates the load. To permit no errors at all, set ERRORS=0. To specify that all errors be allowed, use a very high number.

(強調鉱山)。だから、

、OracleはNUMBER(38)までを扱うので、..私が試した:

ERRORS=999999999999999999999999999999999999 

(36桁)を、速やかにこのエラーました:しようと

SQL*Loader-100: Syntax error on command-line

をはるかに小さい番号:

ERRORS=999999 

はうまく動作します。

ここで使用できる最大値は何ですか? 私はドキュメント内で見つからないので、間違った場所を探しているのか、それともそこにないのかは分かりません:)

そして、大量の番号が必要です。何百万行ものファイルがあるので、将来の問題を避けるために可能な限り使用したいと考えています。

+0

どのバージョンのOracleを試しましたか? –

+0

@Gary_W:私の質問に示されているように:10gと11 ...これまでの両方で同じ結果。 – Ditto

答えて

1

IMHO sqlldrはサポート番号(39)ではありません。私は、SQLローダーのすべての数値パラメータは、整数データ型だと思います。整数の一般的な制限は2147483647です。

sqlldr xxxx control=ctl.ctl errors=2147483648 -> exception 

sqlldr xxxx control=ctl.ctl errors=2147483647 -> works fine 
+0

どのOracleのバージョンですか? –

+0

SQL * Loader:リリース11.2.0.3。 dbバージョンではありません。 –

+0

Arkadiusz:今言及しているのは意味があります:)私はおそらくこの答えを正しいものとして受け入れるでしょう。しかし、私は時間を与えます。 – Ditto

関連する問題