كيفية التعامل مع الارقام و عدد الأصفار يمين الفاصلة
#1
قمت ب صنع قاعدة بيانات أكسس 2007 ويوجد عندي حقل من نوع ارقام لكن تواجهني مشكلة
هذا الحقل ناتج من عملية قسمة داخل البرنامج المشكل انه عندما تكون النتيجة بدون فاصلة لامشكل
لكن عندما تكون الفاصلة تقع المشكلة حيت ان العملية تجري صحيحة لكن عندما تخفظ النتيجة يكون هناك عدد كبير بعد الفاصلة
متلا:
123.36 تحفظ 123.35647589741236

أستعمل دلفي 7 و ado
الرد
#2
قم بالذهاب الى عامود القاعدة في برنامج اكسس وقم بتحديد نوع المتغير الخاص بالخانة

إجعل المتغير صغير وتفادى الـ LongInt وماشابه
الرد
#3
السلام عليكم...

السبب لا علاقة له بـ Access أو غيره، و إنما ناتج عن طريقة تخزين الأعداد ذات الفاصلة في الكمبيوتر حيث كثيراً ما تخزن الكسور كأرقام تقريبية تعتمد دقتها على حجم نوع البيانات، و لا يد لنا في ذلك.

في برامج دلفي يمكنك التخلص من المشكلة بسهولة، و ذلك بضبط الخاصية DisplayFormat للحقل المعني على 0.00 لعرض خانتين فقط يمين الفاصلة (اجعل عدد الأصفار يمين الفاصلة على حسب عدد خانات الكسر التي تريدها).

نرجو الاستفادة و السلام.
الرد
#4
شكرا لكم لكن عادة أستعمل adoquery بطريقة ديناميكية
كيف يمكنني استعمال displayforam في هذه الحالة
الرد
#5
استخدم دالة التقريب round قبل الحفظ للحقل المراد حفضة وتستطيع حفظ رقيمن او ثلاثة بعد الفاصلة
الرد
#6
المشكلة أنه داخل الأكسس الاعداد عادية
المشكل يظهر داخل دلفي
الرد
#7
انا اعاني من مشكلة التقريب فعند كتابة 12.5 يكتبها 12 سواء في الاكس اوفي الدالفي
الرد


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم