• ベストアンサー

Oracleのデータ型、NUMBERについて

Oracleのデータ型のNUMBERは、 NUMBER(総桁数,小数部の桁数)とするとあるのですが、 テーブルの構成をみると(desc テーブル名で確認した)、 総桁数等を指定していない(NUMBERだけ)のものもあるのですが、 指定しないと総桁数はいくつになるのですか? NUMBER型のフィールドを作成しようとしているのですが、 おおよその桁数はわかるのですが、もし越えたらと思うと、 総桁数を指定しない方がいいなかなと考えたりしています。 教えて下さい。

質問者が選んだベストアンサー

  • ベストアンサー
  • paz777
  • ベストアンサー率47% (77/163)
回答No.1

こんにちは。 Oracle8の場合、最大有効桁数38の正数と負数になります。 具体的(?)には 正数:1×10の-130乗から9.99・・・9×10の125乗まで 負数:-1×10の-130乗から-9.99・・・9×10の125乗まで とマニュアルに書いてありました。 ではでは・・・ # とんでもない数字ですね。 # マニュアルを見て少しびっくりしました。

その他の回答 (1)

  • vient
  • ベストアンサー率28% (2/7)
回答No.2

Oracleのデータ型のNUMBERで桁数を指定しないときは、paz777さんがおっしゃられる通りです。 Oracle的には、桁数を指定しなくても良いのですが、できれば指定した方が他人が見た場合、このデータはどれくらいの数値を扱っているのか分かりやすいと思います。 私は、いつも桁数は指定するように教えられましたし、その方が見やすい、理解しやすいと思うので、指定するようにしています。 ただ、もちろん桁数がオーバーするとエラーになってしまいますので、いくらか余裕を取るようにしています。

関連するQ&A