ayi <t>use the float or real data types only if the precision provided by decimal (up to 38 digits) is insufficient<br/> <br/> <br/> Approximate numeric data types(see table 3.3) do not store the exact values specified for many numbers; they store an extremely close approximation of the value. (Technet)<br/> <br/> <br/> Avoid using float or real columns in WHERE clause search conditions, especially the = and operators. It is best to limit float and real columns to > or < comparisons. (Technet)<br/> <br/> so generally choosing Decimal as your data type is the best bet if<br/> <br/> your number can fit in it. Decimal precision is 10E38[~ 38 digits]<br/> <br/> smaller storage space (and maybe calculation speed) of Float is not important for you<br/> <br/> exact numeric behavior is required, such as in financial applications, in operations involving rounding, or in equality checks. (Technet)<br/> <br/> Exact Numeric Data Types decimal and numeric - MSDN<br/> <br/> numeric = decimal (5 to 17 bytes)<br/> <br/> will map to Decimal in .NET<br/> <br/> both have (18, 0) as default (precision,scale) parameters in SQL server<br/> <br/> scale = maximum number of decimal digits that can be stored to the right of the decimal point.<br/> <br/> money(8 byte) and smallmoney(4 byte) are also Exact Data Type and will map to Decimal in .NET and have 4 decimal points (MSDN)<br/> <br/> Approximate Numeric Data Types float and real - MSDN<br/> <br/> real (4 byte)<br/> <br/> will map to Single in .NET<br/> <br/> The ISO synonym for real is float(24)<br/> <br/> float (8 byte)<br/> <br/> will map to Double in .NET<br/> <br/> All exact numeric types always produce the <br/> <br/> (Réponse tronquée)</t>