10bet网址
MySQL 5.6リファレンスマニュアル
本手册下载
PDF (Ltr)- 26.8 mb
PDF (A4)- 26.8 mb


12.20.2 decimalデタ型の特性

MySQL 5.6での小数デタ型(およびそのシノニム)の特性に,。

  • 最大桁数

  • ストレジフォマット

  • ストレジ要件

  • 小数カラムの上限への非標準のMySQL拡張。

このセクション全体を通して,古いバージョン(5.0.3より前)のMySQLのために記述されたアプリケーションとの非互換性の可能性が記載されています。

小数カラムの宣言構文は,小数(Dです。米ySQL 5.6 での引数の値の範囲は次のとおりです。

  • は,最大桁数(精度)です。その範囲は1から65までです。(古いバジョンのMySQLでは1から254までの範囲が許可されました.)

  • Dは,小数点の右側の桁数(スケ,ル)です。その範囲は0から30までであり,より大きくすることはできません。

が65の最大値である場合は,小数値に対する計算が65桁まで正確であることを示します。65年この桁の精度の制限は厳密値数値リテラルにも適用されるため,このようなリテラルの最大範囲は以前とは異なります。(古いバージョンのMySQLでは,10進数値の最大桁数は254でした。ただし,計算は浮動小数点を使用して実行されたために厳密値ではなく,近似値でした)。

MySQL 5.6での小数カラムの値は,9桁の10進数が4バe .トにパックされたバe .ナリ形式を使用して格納されます。各値の整数部と小数部に対するストレジ要件は個別に決定されます。9桁の繰り返しごとに4バイトが必要であり,残りの桁がある場合は,4バイトのうちの一部が必要になります。残りの桁に必要なストレジは,次の表で指定されます。

余りの桁 バ邮箱ト数
0 0
1 - 2 1
3 - 4 2
5 - 6 3.
7号到9号 4

たとえば,小数(18、9)カラムは小数点の両側に9桁あるため,整数部と小数部のそれぞれに4バinesトが必要です。小数(20,6)カラムは整数部に14桁,小数部に6桁あります。整数部の桁は,そのうちの9桁に4バイト,残りの5桁に3バイトが必要です。小数部の6桁には3バトが必要です。

一部の古いバジョンのMySQLとは異なり,MySQL 5.6での小数カラムには,先頭の+文字や-文字,または先頭の0の桁が格納されません。小数(5、1)カラムに+ 0003.1を挿入すると,それは3.1として格納されます。負の数の場合,リテラルの-文字は格納されません。古い動作に依存するアプリケションは,この変更が反映されるように変更する必要があります。

MySQL 5.6での小数カラムでは,カラム定義によって暗黙的に指定された範囲を超える値が許可されません。たとえば,小数(0)カラムは-999年から999までの範囲をサポトします。小数(Dカラムでは,小数点の左側に許可されるのは多くても-D桁です。これは,+記号の代わりに追加の桁の格納が許可されていた古いバージョンのMySQLに依存するアプリケーションとは互換性がありません。

SQL標準では,数字(Dの精度は正確に桁である必要があります。小数(Dの場合,この標準では少なくとも桁の精度が必要ですが,それを超える精度が許可されます。MySQLでは,小数(D数字(Dは同じであり,どらも正確に桁の精度を持っています。

小数値の内部形式の完全な説明に,MySQL字符串/ decimal.cを参照してください。この形式は,decimal2bin ()関数で(例を使用して)説明されています。

小数デタ型の古い処理に依存するアプリケションの移植の詳細は,”MySQL 5.0リファレンスマニュアルを参照してください。


本手册下载
PDF (Ltr)- 26.8 mb
PDF (A4)- 26.8 mb