منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
طريقة تغيير نوع بيانات الحقل داخل جملة الاستعلام - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغات البرمجة الاخرى (http://vb4arb.com/vb/forumdisplay.php?fid=4)
+--- قسم : قسم لغة vb6.0 (http://vb4arb.com/vb/forumdisplay.php?fid=18)
+---- قسم : قسم أسئلة vb6.0 (http://vb4arb.com/vb/forumdisplay.php?fid=28)
+---- الموضوع : طريقة تغيير نوع بيانات الحقل داخل جملة الاستعلام (/showthread.php?tid=27278)



طريقة تغيير نوع بيانات الحقل داخل جملة الاستعلام - عبدالله الصافي - 04-11-18

السلام عليكم ورحمة الله وبركاته
أريد طريقة تغيير نوع الحقل من نص إلي رقم
وذلك من خلال كود جملة الأستعلام 
والتغيير يتم أثناء البحث فقط وليس التغيير علي قاعدة البيانات
أرجو أن تكون الفكرة واضحة

وسؤال آخر 
هل يمكن إستخدام Between في الأستعلام للبحث عن قيمة بين رقمين؟
ولو أمكن تركيب الجملة


وشكرا جزيلا لكم


RE: طريقة تغيير نوع بيانات الحقل داخل جملة الاستعلام - rmnr - 04-11-18

استخدم CInt لـ Integer أو CDbl لـ Double أو CLng لـ Long

واستخدام CDbl اعتقد انه يغني عن الجميع لأنها تقبل الكسر العشري
مثل
كود :
SELECT * FROM [tb1] WHERE CDbl([fld1]) BETWEEN 100 AND 200

أو مثلا
كود :
SELECT * FROM [tb1] WHERE CDbl([fld1]) BETWEEN 95.25 AND 148.37



RE: طريقة تغيير نوع بيانات الحقل داخل جملة الاستعلام - عبدالله الصافي - 05-11-18

شكرا أخي الكريم علي ردك

لقد كنت أستخدم الدالة Val() للتحويل وكنت أظن أن المشكلة بها

ولكني وجدت المشكلة تكمن في بنية الجملة مع Between

حيث كنت أستخدم هذه البنية مع الاستعلام عن بيانات من نوع نص    ' " & text1 & " '
وعند إستخدام نفس التركيبة مع الأستعلام عن بيانات من نوع رقم كان يحدث خطأ

ولكن التركيبة الصحيحة مع الأستعلام عن بيانات من نوع رقم هي    " & (val (text1 & " 

وهو بحذف علامة ( ' ) مع الأرقام ووضعها مع النصوص
كما في التاريخ فبدلا من ( ' ) نضع (#)

وإن كنت فاهم غلط فأرجو التوضيح

وشكرا لكم جميعا


RE: طريقة تغيير نوع بيانات الحقل داخل جملة الاستعلام - حريف برمجة - 05-11-18

(05-11-18, 12:03 AM)عبدالله الصافي كتب : شكرا أخي الكريم علي ردك

لقد كنت أستخدم الدالة Val() للتحويل وكنت أظن أن المشكلة بها

ولكني وجدت المشكلة تكمن في بنية الجملة مع Between

حيث كنت أستخدم هذه البنية مع الاستعلام عن بيانات من نوع نص    ' " & text1 & " '
وعند إستخدام نفس التركيبة مع الأستعلام عن بيانات من نوع رقم كان يحدث خطأ

ولكن التركيبة الصحيحة مع الأستعلام عن بيانات من نوع رقم هي    " & (val (text1 & " 

وهو بحذف علامة ( ' ) مع الأرقام ووضعها مع النصوص
كما في التاريخ فبدلا من ( ' ) نضع (#)

وإن كنت فاهم غلط فأرجو التوضيح

وشكرا لكم جميعا

نعم كلامك صحيح .