PDA

View Full Version : مشکل با نوع real



کم حوصله
یک شنبه 30 شهریور 1382, 01:21 صبح
سلام دوستان
همانطور که می دانید نوع real و نوع doubel از نوع اعداد اعشاری هستند و به صورت ممیز شناور هستند من در برنامه ام که با vb6 نوشتم از این نوع زیاد استفاده کردم حال به مشکلی که بر خوردم اینه که مثلا عدد 12.6 را به صورت 12.5999998 نشان میده که خوب این صحیح نیست
جالب اینجاست که وقتی خود sql را باز میکنی این عدد به صورت 12.6 نشان داده می شود ولی در برنامه به صورت 12.5999998 نشان داده می شود
یکی از دوستان این گونه راهنمایی کرد


Select Cast(myfield As Numeric(10,1)), * From mytable

ولی مشکل اینجاست که اگر عدد ما اعشار نداشته باشد به این مورد گیر میدهد
حالا چه کنم که اون اعداد نجومی را نشون نده :cry:

bbehnam
سه شنبه 20 آبان 1382, 08:27 صبح
بسمه تعالی

با سلام

در sql server در نوع Real به تعداد ارقام اعشار 0 وارد می کند. , یا آخرین عدد اعشار را به گونه ای می شکند تا ارقام اعشار برابر ارقام اعشار نوع Real شود مثلا 12.6 را به 12.5999999 تبدیل می کند
برای حل این مشکل می بایست نوع فیلد مورد نظر را به Numeric تغییر داده و ویژگی Precision , Scale آن را Set می کنیم.
Precision تعداد کل ارقام و Scale تعداد ارقام اعشاری را مشخص می کند.

با آرزوی موفقیت

خدا نگهدار

Email:mh_deriss@yahoo.com