22-10-16, 09:54 PM
(آخر تعديل لهذه المشاركة : 22-10-16, 09:56 PM {2} بواسطة العواد الصغير.)
(22-10-16, 12:40 PM)ممدوح كتب : وعليكم السلام ورحمة الله وبركاته
توجد طريقة ترجع بأي سطر يحتوي عمود محدد على أي كلمة من الكلمات الموجودة في TextBox1
وهذا هو الكود لعمل ذلك
كود :
Dim mLike As String = "([column1] LIKE '%" & Join(Me.TextBox1.Text.Trim.Split, "%') OR ([column1] LIKE '%") & "%')"
Dim sql As String = "SELECT * FROM [Tabel1] WHERE " + mLike
لو وضعنا في TextBox1.Text النص التالي "من في بي" فإن جملة SQL راح تكون
كود :
SELECT * FROM [Tabel1] WHERE ([column1] LIKE '%من%') OR ([column1] LIKE '%في%') OR ([column1] LIKE '%بي%')
جربها يمكن تطلع مطابقة لسؤالك
السلام عليكم
الطريقة هذه تزيد الصفوف ولا تنقصها or هي او اي ستزيد الصفوف بذلك لان اي حقل
فيه احد الكلمات سيظهر على كل اشكرك اتعبتك معي
وجزاك الله خيرا
(22-10-16, 06:55 PM)myalsailamy كتب : نفس طريقتي يا اخ ممدوح ،
كما انه يوجد طرق اخرى و لكن هذه اسهلها ايضا يوجد طريقة CONTAINS و FreeText و تمرر مجموعه من الكلمات كمصفوفه و لكنها صعبه قليلاً كمبتدأ في ادارة قواعد البيانات يعني يبغى لها اضافات اثناء تثبيت SQL Server ، و في الحقيقه لم اجربها و انما قرات عنها سابقا و احببت اضافتها لعلك تجد ضالتك فيها ، و هذا رابط يشرح طريقتها في الاستخدام :
http://sqlmag.com/sql-server/sample-full...rch-engine
ايضا شيء اخر لو اردت ان تبحث في جميع الاعمده النصيه الموجوده في قاعدة البيانات بنفس طريقة الاخ ممدوح فقط قم بدمج الاعمده و طبق عليها عملية like مثال :
WHERE ([column1]+[column2] LIKE '%من%') OR ([column1]+[column2] LIKE '%في%') OR ([column1]+[column2] LIKE '%بي%')
اشكرك على الرد جزاك الله خيرا
سبحان الله والحمد لله ولا اله الا الله والله اكبر
