web-dev-qa-db-ja.com

原価計算値を格納するためにSQLサーバーでMoneyデータまたはDecimalデータ型を使用するのはいつですか?

原価計算値を保存するために望ましいデータ型は何ですか?お金または小数のプログラマティックな違いは何を賭けますか? Moneyデータ型のasp.netモデルのasp.netデータ注釈?

10
user3378215

Decimalタイプは、期待する結果を得るために中間結果を保持するためのより高い精度を提供します。

moneyデータ型のデメリット:

  1. それは独占的であるため、移植するのは面倒です。これは、数十年前の多くの「SybaseCodeMuseum」機能の1つです。 UNIXの初期バージョンを覚えていますか?

  2. 言語を話す人々にヒルビリーのように聞こえさせる必要がないときに方言でコードを書く。適切なサイズの列を使用できるように、DECIMAL(s、p)を使用することをお勧めします。

  3. バックエンドでコンマとドル記号を使用して表示とフォーマットを行います。これは、階層型アーキテクチャの目的を無効にします。

  4. MONEYデータ型に丸め誤差があります。

Ref:msdn

13
Raging Bull

decimalデータ型は正確ではないため、moneyを選択する必要があります。

パフォーマンス/ストレージの比較:MONEY vs. DECIMAL by AaronBertrandも確認できます。

4
Rahul Tripathi