私は、floatデータ型を使用して、小数点以下2桁(ドルとセント)のみである必要がある値を格納するデータベースに取り組んでいます。
float列を更新する人がROUNDを実行する限り、floatの使用は問題なく機能しているように見えます。もちろん、これは常に発生するとは限りません。SUMが実行されると、表示は小数点以下2桁のみを表示するようにフォーマットされているため、表示されているものから常に数ペニーずれています。このデータベースには、floatを使用する数百のテーブルがあり、float列を自動的に丸めることができると便利です。
これはできますか?
INSERTおよびUPDATEでTRIGGERを使用して、列でROUNDを実行できますか?
可能であれば、TRIGGERをどのようにコーディングするかを示し、それをお勧めしますか?
他のアイデアはありますか?
SQLServer2005を使用しています。
これは、 「フロートまたはデシマルを会計アプリケーションのドル額に使用しますか?」という質問をする投稿です。、そして私は言った1つの応答が好きです
「ある種の固定小数点/任意精度の数値パッケージ(Java BigNum、Python 10進モジュールなど)の使用を実際に検討する必要があります。そうしないと、傷ついた世界に陥ることになります。」