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

البحث عن كلمة غير متاطبقة تماماً

بدأه كارم سامي في 29 مارس 2011 · 7 رد · 522 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ،

كيف يصبح هذا لكود

sql = " Select * from product where proname = '"+pronametextbox.text+"'";

اذا اردت ان يبحث عن proname الموجود في الداتا وتكون متاشبها في الحروف مع الكلمة الموجودة pronametextbox وليس متاطبقة تماماً

مثلاً اذا كتبت قللم .. يقوم بعرض النتائج المماثلة (قلم ، قم ، ققلم .. وهكذا )في داتا جريد فيو

#3

استخدم هذا

  string VAR_bookdName;
            VAR_bdName = textBox2.Text;

            string connetionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=..//..//data.mdb;";
            string sql = "SELECT * FROM bd where @bookdname LIKE @VAR_bdName";
            OleDbConnection connection = new OleDbConnection(connetionString);
            OleDbDataAdapter dataadapter = new OleDbDataAdapter(sql, connection);
            DataSet ds = new DataSet();
            connection.Open();
            dataadapter.Fill(ds, "bd_table");
            connection.Close();
            bdDataGridView2.DataSource = ds;
            bdDataGridView2.DataMember = "bd_table";

        }

وظهر لي هذا الخطأ

No value given for one or more required parameters.

#4

لأنك استخدمت بارامتر في جملة الاستعلام (@VAR_bdName) ولكنك لم تعين قيمة لها.

#5

وما هي السياقة الصحيحة للجملة ؟

#6

يبدو لي أن لديك نقصاً كبيراً في أساسيات الـADO.NET والـSQL. أنصحك بأن تجد كتاباً في الموضوع واقرأه بتمعن. ستوفر عليك هذه الخطوة الكثير من التخبط العشوائي.

على العموم. لإضافة بارامتر أضف السطر التالي:

dataadapter.Command.Parameters.AddWithValue("@VAR_bdName", myValue)

حيث myValue طبعاً هي القيمة نفسها.

#7

شكراً لك اخ System Down

الكود يعمل جيداً بهذا الشكل

string connetionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=..//..//data.mdb;";
            string sql = " Select * from bd where proname = '"+pronametextbox.text+"'";
            OleDbConnection connection = new OleDbConnection(connetionString);
            OleDbDataAdapter dataadapter = new OleDbDataAdapter(sql, connection);
            DataSet ds = new DataSet();
            connection.Open();
            dataadapter.Fill(ds, "bd_table");
            connection.Close();
            bdDataGridView2.DataSource = ds;
            bdDataGridView2.DataMember = "bd_table";

كل مااريده كا ذكرت في اول المشكلة ان اجعله يحصل علي نتائج غير متطابقة تماماً

شكراً

تم تعديل هذه المشاركة بواسطة كارم سامي في 29 مارس 2011 في 22:49

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