fasadat
fasadat

Reputation: 1045

how decimal digits before and after decimal point fixed in sql?

I have a variable of type decimal(26,16) and i want to save a value with 12 digits before decimal point and 14 digits after it, but it raises an "Arithmetic overflow error converting numeric to data type numeric". when i define a variable of this type, what does it really mean? it means it can only store values with 10 digits before and 16 digits after decimal point respectively or something else?

Upvotes: 0

Views: 1406

Answers (2)

tarzanbappa
tarzanbappa

Reputation: 4978

The maximum total number of decimal digits that can be stored, both to the left and to the right of the decimal point. The precision must be a value from 1 through the maximum precision of 38. The default precision is 18.

precision means the maximum number of digit you can use.

scale means the maximum number of digit you can use after decimal(.)

refer this... http://msdn.microsoft.com/en-us/library/ms187746.aspx

Upvotes: 0

t-clausen.dk
t-clausen.dk

Reputation: 44346

The highest number you can have in a decimal(26,16) is 9999999999.9999999999999999.

So when you try to store a 12 digit number it will to overflow

Try a decimal(28,16) instead

Upvotes: 1

Related Questions