الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

خطأ فى كود الاستعلام

مغلق
بدأه fady vb في 6 أبريل 2006 · 8 رد · 736 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

ما الحل لهدا الكود

Private Sub Command1_Click()

Dim s As Double

s = Val(Text1.Text)

Data1.RecordSource = "select*from emps where sal>=s"

Data1.Refresh

End Sub

مع العلم بأن حقل المرتب (sal) فى قاعدة اليانات نوعه double

رسالة الخطأ هى:

Run-time error '3061':

too few parameters.expected1.

اريد ان اعرف ما سبب الخطأ والحل :wacko:

#2

السلام عليكم ورحمة الله وبركاتة

اخى العزيز الفجوال لايستطيع قراءة المتغير s داخل جملة الاستعلام

والصحيح ان شاء الله كما يلى

select * from emps where sal>= ' " & s & " ' ok

وبارك الله فيك

السلام عليكم

ايمن ay

#3

ارجو كتابة النتيجة

الكود اشتغل ولا

#4

للاسف يا أيمن الكود لايعمل وطلع خطأ وهو

data type mismatch in criteria expression.

وعلى العموم شكرا على مساعدتك

#5

السلام عليكم ..

اعتقد هذا الكود شغال :rolleyes:

Private Sub Command1_Click()
Dim s As Double
s = Val(Text1.Text)
Data1.RecordSource = "select * from emps where sal>='" + s + "'"
Data1.Refresh
Data1.Recordset.MoveLast
Data1.Recordset.MoveFirst
End Sub
#6

للاسف الكود لايعمل

اود من السادة المشرفين ان يعطونى حل لهده المشكلة ...وشكرا

#7
Data1.RecordSource = "select * from emps where sal>=" & s & ""

460.gif

#8

السلام عليكم

أولا لي تعقيب على الجمل التالية

Dim s As Double

s = Val(Text1.Text)

أنت قد صرحت متغير على أنه من نوع مزدوج صح ؟

طيب ليش وضعت الكلمة المحجوزة (Val)

مع أنه من المعروف أن هذه الكلمة تحول من مزدوج الى صحيح

أذا كان المقصود الحصول على أرقام مزدوجة من ال textbox أليك هذه الكلمة

CDbl(Text1.text)

أما حول الاستعلام أخي الحبيب وكما أشار أليه الاخ ( المتميز )

فعندما نريد مقارنة نص نضع الشرط بين علامة تنصيص واحدة في أولها وآخرها كما في التالي :

Dim S As String

Select * From Table Where S = '" & Name & "';"

وكذلك الامر يعمل مع وضع أداة بديله عن المتغير (Name) .

أما أذا أردنا وضع متغير من نوع رقم , أذن تنفيذه كالتالي :

Dim S As Double

Select * From Table Where S = " & Name & ";"

كما تلاحظ أخي الحبيب لم أضع علامة تنصيص , وأني فقط أكتفيت بوضع علامتي تنصيص مفردتان فقط لاحظ الفرق .

أرجوا أني وضحت المسئلة وأتمنى لك التوفيق

#9

أولا: أود ان اشكر جميع الاعضاء الدين ساعدونى .

ثانيا: اريد ان اخبركم بانى وجدت الكود الصحيح وهو كالاتى:

data1.Recordsource="Select * From emps Where sal>=" & (d) & ""

حيث ان d هو متغير رقمى double

وشكر لكم جميعا والى اللقاء فى مشاركات مفيدة اخرى

واتمنى لكم التوفيق.

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…