• ベストアンサー

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

  • オラクルのnumber

    オラクルデータのNumber型の(14,2)という場合、 最大桁数が14桁で小数点が2桁ということでしょうか? 小数点が2桁ある場合は、整数部分は12桁までしか入らないのでしょうか

  • Oracle9i フィールドのデータ型の取得方法

    Windows版のOracle9iで、テーブル名とフィールド名を指定して、フィールドのデータ型を取得する方法を教えてください。 ちなみに DESC テーブル名 では複数フィールドのデータ型が取得されますが、あくまでも特定のフィールドのデータ型を取得したいです。

  • Oracleでテーブル構成を表示するコマンド

    Oracleでテーブル構成を表示するコマンドを教えて下さい(項目名・桁数を確認したい)特に桁数

  • オラクルでNUMBER型で少数点が.0の場合どうなる??

    お疲れ様です。 価格の定義が PRICE NUMBER(8,1) NOT NULL, --単価 となっている場合 整数部 7桁、少数部 1桁、桁数に小数点は含まない という意味となりますが、 その項目に 例えば、SQL Plusで 100.1を入力したら100.1と表示しますが、 100.0を入力したら100.0と表示せず、100と表示されます。 どうしてなのかがわかりません。 オラクルの仕様なのでしょうか? 宜しくお願いします。

  • Oracle 

     ここでお世話になったおかげで立派な(?)プログラマになれました。そこで、またしてもお願いなんですがOracleでのデータが返ってくるスピードについて伺いたいのです。10項目のフィールドがあるテーブルで、それらを1つずつ書いて指定するのと*を使って取得するのとでは、どちらが早いのでしょうか?データの量にも寄ると思いますが一考を伺いたいです。皆々様、宜しくお願い致します。

  • Accessのデータ型について質問です。

    Accessのデータ型について質問です。 Accessの数値型に 整数型と浮動小数点がありますが、 (1)整数型のフィールドプロパティに「小数点以下表示桁数」の項目があるのでしょうか? (2)浮動小数点表示桁数を「自動」と「桁数指定」するのとでは、データサイズが変わるのでしょうか? どなたかご存じの方がおられましたら、ご教授よろしくお願いいたします。 m(_ _)m

  • NUMBER(N,M) としたときの、格納データサイズ(バイト)

    ORACLEで、DB項目をNUMBER(N,M)と定義したときの データサイズ(バイト)を知りたいです。 例えば、 NUMBER(1,0), NUMBER(2,0), .... NUMBER(10,0) としたときには、サイズは何バイトになりますか? また、小数以下を指定したときにはどうなるでしょうか? よろしくお願い致します。

  • オラクルにて

    オラクルにて オラクルデータベースへ新規テーブルをエクセルからインポートしようと していますが、その中で、●の記号(マーク)しかないフィールドがあり、 このデータ型は何にあたるか教えて頂きたく、もしかしたらこの記号は オラクルへ移行出来ないのかも知れないと思ってもいますが、 ご回答下さいます様宜しくお願い致します。

  • Oracleのトリガーについて

    Oracleのトリガーについて質問です。 旧システムから新システムへデータ移行を行おうとしているのですが、 新システムではNEWテーブル(仮名)が新規で追加されています。 データ移行の方法として、旧システムのダンプファイルをエクスポートし、 新ステムにユーザを再作成後インポートしました。 その後、あらかじめ新システムでNEWテーブルのみテーブル指定のエク スポートを行っていたダンプファイルより、追加でインポートを行いました。 これでデータ移行完了と思っていたのですが、NEWテーブルのデータはトリガー により生成されるらしいのですが、どのタイミングで生成されるのでしょうか? データ移行完了時はデータ0件です。 NEWテーブルをインポートする順番が逆なのでしょうか? それともインポートではトリガーは起動しないのでしょうか? または、トリガーの仕組みが消えている(?)のでしょうか? (納入先に行かないと確認できない状態なので実際のデータベースが確認できません…) Oracleはあまり詳しくないため、わかりづらい質問かもしれませんが よろしくおねがいします。 【環境】 Oracle11g R2 Windows2008Server

  • Access2003 データ型 オートナンバーについて エクセルからテ

    Access2003 データ型 オートナンバーについて エクセルからテーブルをインポートする方法 主キーである、IDと名をつけたフィールドのデータ型は"オートナンバー"でレコード新規入力際、自動で番号がふられていくようにしています。 このテーブルにエクセルのレコードをインポートして追加したいのですが、インポートできません。 ※オートナンバーフィールドが原因と思われます。 どうすれば、エクセルからこのテーブルにレコードをインポートし、追加されたレコードにオートナンバーで番号を割り振る事が出来ますででしょうか? 最も、シンプルな方法をお教え願います。