VB6.0とSQLSERVERで開発
数量、単価、金額、消費税、原価率・・・などなどの四則演算を行う場合、
各々のデータ型をどう定義したら良いのでしょう。

VBでSingle/Double
SQLSERVERでfloat/decimal
ネットとかでよく見かけるのは、これらの浮動小数点型なんですが、
これって誤差がつきものですよね?
システム上同じ数字を出す全箇所について、必ず同じ計算ロジックを通すという
コーディング制約を設けて、それを遵守しないと、絶対どこかで誤差が出ますよね?

さらに、VBはDouble(倍精度)、SQLはfloat(単精度)などの定義をしている
例をことさらよく見かけますが、こんなのはアリなんでしょうか?

「金額が関わるところに浮動小数点を使うのはあり得ない」と断言しているサイトも
どこかで見ました。
必ず固定小数点型、VBはCurrency・SQLはmoneyだろう、スピードは落ちると言っても、
最近の機械ならそれこそ誤差の範囲だ・・・という感じの紹介で。

私も、数字に誤差の出ない固定小数点がいいんじゃないかなー、と思っています。
でも、現実はどちらかといえばそうじゃないことの方が多い・・・・
一般的には、どう考えるものなんでしょうか。