PDA

View Full Version : جستجودربانک اطلاعاتی



لیلا خیرالهی
دوشنبه 23 مهر 1386, 21:26 عصر
برای جستجو با فیلد های زیاد چه باید کرد؟؟:متفکر:

lahiji
سه شنبه 24 مهر 1386, 07:25 صبح
یعنی چی ؟ توضیح بیشتر بدید .

لیلا خیرالهی
جمعه 27 مهر 1386, 13:27 عصر
یک جستجو با فیلدهای زیاد چه طوریه؟ فکرکنم باید از sql استفاده کنم و از گزارش گیری استفاده کنم ولی نمی دونم چه طور اینکارو بکنم؟؟؟؟

perfeshnal
جمعه 27 مهر 1386, 13:46 عصر
سلام

شما دو دفعه است همچنین تاپیکی میزنید ولی من که آخر نفهمیدم منظور شما از این سوال چیه اگر می دونید باید چکار کنید که دیگه احتیاج به سوال کردن نیست.

hrj1981
جمعه 27 مهر 1386, 13:55 عصر
دوست عزیز
اگر منظورتان اینکه برای چند فیلد شرط گذاشت یک جور جستجوگر تعریف می کنند و اگر برای تعداد زیادی رکورد منظورتان است یک جور
دقیقاً کدامشان منظورتان است؟

mf_engineer
جمعه 27 مهر 1386, 14:57 عصر
باسلام
خب شما باید از کد جستجو استفاده کنید , خب این سوال نداره...!!!
یعنی

Select * from tbname where اسم فیلد =" عبارت جستجو" & اسم فیلد دوم = " عبارت جستجو " & تا اخرین شرط
البته اگه منظورتون همین باشه

لیلا خیرالهی
یک شنبه 29 مهر 1386, 00:49 صبح
با سلام به همه
اگه می دونستم چی کار کنم تاپیک نمی گذاشتم
من یه پروژه واسه آژانس مسکن دارم می نویسم با دستو رselect خیلی زیاد و پیچیده میشه چون 54 فیلد باید جستجو بشه
مثلا یه خونه با تمام خصوصیاتی که از checkbox استفاده کردم باید جستجو بشه حالا ملک ممکنه ویلا آپارتمان باغ اداره .... باشه

اوبالیت به بو
یک شنبه 29 مهر 1386, 14:56 عصر
خوب از متد Filter تو ADODC استفاده کنید البته اگه از ADO رفته باشید.

ali_habibi1384
یک شنبه 29 مهر 1386, 18:19 عصر
سلام شما می تونید از دستور filter استفاده کنید با یک مثال متوجه میشین:


dim t as string
t=cstr(text1.text)
Adodc1.Recordset.Filter = "(field = '" & t & "' )"


field منظور اسم فیلدی هست که توی پایگاه داده است اگه مشکل داشتید میتونید ایمیل بزنید Ali_habibi1384@yahoo.com ویا تماس بگیرید 09354472990

ebrahimhoze
یک شنبه 29 مهر 1386, 19:29 عصر
Adodc1.Recordset.Filter = "nam =' " + Text7.Text + " ' "
Adodc1.Recordset.Filter = " nam like '" & Text7.Text & "*'"

جستجوی خطی

yayan85
دوشنبه 30 مهر 1386, 02:16 صبح
با سلام.میشه در باره جستجوی ترکیبی هم توضیح بدین.من تو 14 تا فیلد که البته تو دو تا جدول جدا هستند دارم جستجو می کنم.حالتی که همشون با هم پر بشن و رکوردی که همش با اطلاعات وارد شده یکی باشه رو می تونم پیدا کنم.برای حالتی که هر بار جای اطلاعات یکی از فیلد ها خالی باشه ولی بقیه پر باشن هم کد نوشتم جواب میده.ولی نمودونم چطوری میشه بیشتر از یکی خالی باشه .مثلا از 14 تا مورد جستجو فقط 4 تا وارد بشه و بقیه text ها خالی باشن!!!اونایی که خالی موندن رو رد کنه و کدشو Select نکنه .کد های قبلی رو با select نوشتم و با adodcکار کردم.لطفا یکی کمک کنه.

vbhamed
جمعه 04 آبان 1386, 12:00 عصر
سلام

دستور sql تون رو مرحله به مرحله بسازید و اگر textbox مربوطه خالی بود تو دستور نیارید

dim Sql$,a$
Sql = "Select * From Table Where "

if trim$(text1)<>"" then sql = sql & " Field1 = " & text1 : a = " And "
if trim$(text2)<>"" then sql = sql & a & " Field2 = " & text2 : a = " And "
if trim$(text3)<>"" then sql = sql & " Field3 = " & text3 : a = " And "
.
.
.
برای فیلدهای رشته ای آپاستروف یادتون نره مثل این
if trim$(text100)<>"" then sql = sql & a & " Field100 = '" & text100 & "'" : a = " And "

ضمنا اگر همه فیلدها خالی باشند کلمه where باید از آخر SQL حذف بشه