PDA

View Full Version : جستجو در متن



maniaf69
چهارشنبه 25 آبان 1390, 13:16 عصر
سلام دوستان من یک سوا خیلی ساده دارم
من یک بانک اطلاعاتی دارم که بر اساس عنوان جستجو میشه ولی یک مشکل داره که عنوان من شاید چند کلمه باشه من می خواهم بر اساس کلمه سرچ کنه نه بر اساس جمله :خجالت::خجالت::خجالت::خجالت:
کسی راهی سراغ نداره؟:افسرده::افسرده::افسر ه::افسرده:

Mr'Jamshidy
چهارشنبه 25 آبان 1390, 13:34 عصر
سوالت رومطالب مرتبط با بانکهای اطلاعاتی در VB6 (http://barnamenevis.org/forumdisplay.php?166-%D9%85%D8%B7%D8%A7%D9%84%D8%A8-%D9%85%D8%B1%D8%AA%D8%A8%D8%B7-%D8%A8%D8%A7-%D8%A8%D8%A7%D9%86%DA%A9%D9%87%D8%A7%DB%8C-%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA%DB%8C-%D8%AF%D8%B1-VB6) مطرح کن

maniaf69
چهارشنبه 25 آبان 1390, 16:52 عصر
حالا چون اینجا نوشتم کسی نباید جوتبمو بده
خوب یک راهنمایی کوچیک که میتونید

_behnam_
چهارشنبه 25 آبان 1390, 17:05 عصر
اگه از دستورات SQL استفاده میکنید با دستور Like میشه اینکارو کرد

SELECT column_name(s)
FROM table_name
WHERE column_name LIKE pattern


SELECT * FROM Persons
WHERE City LIKE 's%'


اطلاعات بیشتر (http://webfocus.ir/portal/sql-like.html)

maniaf69
چهارشنبه 25 آبان 1390, 19:43 عصر
من از SQL استفاده نمی کنم از Access استفاده می کنم
راه دیگه نیست برای این کار؟

_behnam_
چهارشنبه 25 آبان 1390, 21:05 عصر
من از SQL استفاده نمی کنم از Access استفاده می کنم
راه دیگه نیست برای این کار؟
منظورم بانک نبود , دستورات منظورم بود
بهتره از ADO استفاده کنید واسه بانک

maniaf69
پنج شنبه 26 آبان 1390, 07:28 صبح
نمونه ندارید من متوجه نمی شوم

vbhamed
پنج شنبه 26 آبان 1390, 08:33 صبح
سلام

بايد براي تك تك كلمات رشته جستجو رو تشكيل بديد
Dim Sql$, temp() As String

temp = Split("this is a test", " ")

Sql = "Select * From Table1 Where 0 "
For i = 0 To UBound(temp)
Sql = Sql & " Or Instr(FieldName,'" & temp(i) & "')"
Next

تو اين مثال فرض كنيم جمله اي كه وارد كردين this is a test هست
خروجي نهايي به شكل زير ميشه، ضمنا فرض كرديم كلمات با فاصله از هم جدا ميشن :
Select * From Table1 Where 0 Or Instr(FieldName,'this') Or Instr(FieldName,'is') Or Instr(FieldName,'a') Or Instr(FieldName,'test')

Restlesa
پنج شنبه 26 آبان 1390, 10:35 صبح
نمونه ندارید من متوجه نمی شوم
دوست عزیز منظور دوست مون استفاده از دستورات sql هستش.
میشه گفت که Sql زبان برنامه نویسی در پایگاه های داده هستش که توسط شرکت مایکروسافت ایجاد شده که کار با پاگاه های داده از جمله Access و SQL Server رو خیلی خیلی راحت کرده
یکسری از دستورات معروف و پرکاربرد Sql دستورات Select و Like هستن که بیتر در جستو در بانک های اطلاعاتی مورد استفاده قرار میگیرن
اگه مثال رو که جناب vbhamed گذاشتن رو متوجه نشدید بگید تا بنده با یه زبانی ساده تر براتون توضیح بدم

_behnam_
پنج شنبه 26 آبان 1390, 13:05 عصر
دوست عزیز بهتره اول شما بگید که به چه روشی به بانک وصل شدید تا دوستان بدونن چطور کمکتون کنند

maniaf69
جمعه 27 آبان 1390, 15:22 عصر
متال رو متوجه شدم
ولی می خواهم بدونم تو زبان فارسی هم جواب میده ؟
من می خواهم تو ADO فیلتر شده نشون بده
و اینکه تو گزارش گیری برای پرینت هم فیلتر شده نشون بده

vbhamed
شنبه 28 آبان 1390, 00:18 صبح
سلام

هم تو ADO جواب ميده هم براي فارسي (البته به شرطي كه كدپيج كيبرد فارسي ويندوزت با كدپيجي كه قبلا با اون تو ديتابيس نوشتي يكسان باشه وگرنه بعضي حروف مثل ي يا ك ممكنه مشكل داشته باشه)

براي گزارش هم نمونه تو سايت هست