2017-11-29 38 views
3

データ型小数点(18,8)のフィールドを持つテーブル(MS SQL Server)があります。 私のアプリケーションでは、値0.000089を入力して保存します。 SQL Server Management Studioでテーブルをチェックして、値がOK(0.00008000)であることを確認します。 しかし、TADOQueryを使用して値を読み取ると、戻り値は0.0001(常に小数点以下4桁に丸められます - 0.123456789 - > 0.1235)になります。私はTDataSourceとTDBTable、またADOExplorerツールでTADOTableを試してみましたが、結果は同じでした。 どこに問題がありますか?デルファイADOはSQL Serverから小数点以下を切り捨てます

+2

お読みください[受け入れ-解答](https://stackoverflow.com/help/accepted-answer) –

答えて

8

あなたTADOQueryコンポーネント

EnableBCDがtrueの場合、それは小数点以下4桁までサポートできるでEnableBCDプロパティを無効にします。 EnableBCDがfalseの場合、フィールドはTFloatFieldにマップされます。

enter image description here

+0

はありがとうございました!今、私はフィールドがBCDと判断され、なぜ検索するのが始まるでしょう。 –

+3

@MadDog、あなたはアップヴォーティングと答えを受け入れることによって彼に感謝することができます。 – kobik

+0

おっと、申し訳ありません。やったよ –

関連する問題