نمایش نتایج 1 تا 24 از 24

نام تاپیک: جستجو در بانک اطلاعاتی

  1. #1

    جستجو در بانک اطلاعاتی

    با سلام به تمامی دوستان

    من می خواستم کدی بنویسم که در جستجوی دیتابیس برنامه به این شکل عمل کنه

    یعنی اینکه وقتی می خوام یه اسم رو جستجو کنم براساس نام یا نام خانوادگی و....

    مثلآ : اولین حرفی که زدم (م) تمام اسم ها که اولشون م دارن لیست بشن البته نمی خوام

    که توی تکست باکس بنویسم بعد بیام دکمه سرچ رو بزنم بلکه می خوام توی همون تکست

    باکس انجام بشه

    ممنون

  2. #2
    کاربر دائمی آواتار M.T.P
    تاریخ عضویت
    دی 1388
    محل زندگی
    Planet Earth
    پست
    1,769

    نقل قول: جستجو در بانک اطلاعاتی

    در کد زیر فرض بر این هست که:
    Rs رکوردست شما.
    Users جدول بانک.
    FName فیلد مورد جستجو.
    در واقع علامت ' تعیین میکند که اول عبارت مورد جستجو باید دقیقا کلمه داخل تکس باکس باشه و عبارت * در آخر کد یعنی اینکه مابقی عبارت هرچی باشه مهم نیست.

    If Text1.Text = vbNullString Then Exit Sub
    If Rs.State = 1 Then Rs.Close
    Rs.open "Select * From Users Where FName Like '" & Text1.Text & "*'"
    آخرین ویرایش به وسیله M.T.P : جمعه 19 شهریور 1389 در 15:01 عصر

  3. #3

    نقل قول: جستجو در بانک اطلاعاتی

    ممنون دوست عزیز

    در صورتی که بخوام از یه تاریخ تا یه تاریخ رو مورد جستجو قرار بدم چطوریه؟

    در ضمن اون rs.sate=1 به چه معنیه؟

    ممنون

  4. #4
    کاربر دائمی آواتار M.T.P
    تاریخ عضویت
    دی 1388
    محل زندگی
    Planet Earth
    پست
    1,769

    نقل قول: جستجو در بانک اطلاعاتی

    نحوه انتخاب رکوردهای بین دو تاریخ:
    Dim DateFrom As String
    Dim DateTo As String
    DateFrom = "1389/01/01"
    DateTo = "1389/06/01"
    If Rs.State = 1 Then Rs.Close
    Rs.Open "Select * From Tabel Where Date > " & DateFrom & " And Date < " & DateTo

    در ضمن اون rs.sate=1 به چه معنیه؟
    چون در Adodb در هربار باز کردن رکوردست باید قبلا بسته باشه، کد بالا چک میکنه اگه رکوردست باز بود اون رو میبنده.

  5. #5
    کاربر دائمی آواتار SilverGold
    تاریخ عضویت
    تیر 1389
    محل زندگی
    مشهدالرضا علیه السلام
    پست
    150

    نقل قول: جستجو در بانک اطلاعاتی

    سلام چرا شما از بیتوین استفاده نمی کنین

  6. #6

    نقل قول: جستجو در بانک اطلاعاتی

    سلام
    من يك بانك داده اكسس دارم كه حجمش زياد چه جوري ميتونم با سرعت زياد در بانك جستجو كنم
    طريقه ايندكس كردن چه جوريه و كارش چيه
    باتشكر

  7. #7
    کاربر تازه وارد آواتار mds_boy
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    گنبد کاووس
    پست
    94

    نقل قول: جستجو در بانک اطلاعاتی

    نقل قول نوشته شده توسط M.T.P مشاهده تاپیک
    در کد زیر فرض بر این هست که:
    Rs رکوردست شما.
    Users جدول بانک.
    FName فیلد مورد جستجو.
    در واقع علامت ' تعیین میکند که اول عبارت مورد جستجو باید دقیقا کلمه داخل تکس باکس باشه و عبارت * در آخر کد یعنی اینکه مابقی عبارت هرچی باشه مهم نیست.

    If Text1.Text = vbNullString Then Exit Sub
    If Rs.State = 1 Then Rs.Close
    Rs.open "Select * From Users Where FName Like '" & Text1.Text & "*"
    rs رو برابر چه خصوصیتی میکنیم ؟
    و چیزی که من میخوام اینه:
    1 کامبوباکس داریم، که با وارد کردن حروف یا رقم طبقه یک فیلد از جدولم فیلتر بشه درعانه واحد، تا وقتی که به چیزه دلخواهمون برسیم.
    مثل :
    ___________
    | ^ | فروشن |
    ----------------
    | فروشنده 1 |
    --------------
    | فروشنده 2 |
    -------------
    تقریبا این شکلی !!!
    با نوشتنه فروش لیست با فیلتر کردن همه ی فیلده رکوردها که اولش فروش هست رو برام بیاره .
    اگه ممکنه مثال بزنید.
    با تشکر

  8. #8
    کاربر دائمی آواتار M.T.P
    تاریخ عضویت
    دی 1388
    محل زندگی
    Planet Earth
    پست
    1,769

    نقل قول: جستجو در بانک اطلاعاتی

    متغیر Rs رکوردستی از نوع Adodb.Recordset هست. برای مواقعی که نمیخوایم از کنترل Adodc استفاده کنیم.
    Dim Rs As New ADODB.Recordset

    شما اگه از Adodc استفاده میکنین کدتون اینطوری میشه:
    If Combo1.Text = vbNullString Then Exit Sub
    Adodc1.RecordSource = "Select * From Users Where FName Like '" & Combo1.Text & "*"

    یا اینکه از فیلتر استفاده کنید:
    Adodc1.Filter = "FName Like '" & Combo1.Text & "*"
    که در حالت فیلتر سرعت بیشتر هست ( به شرط اینکه قبل از دستور فیلتر کل جدول تو RecordSource ریخته شده باشد)

  9. #9
    کاربر تازه وارد آواتار mds_boy
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    گنبد کاووس
    پست
    94

    نقل قول: جستجو در بانک اطلاعاتی

    دوسته عزیز M.T.P ممنون از راهنماییت، همیشه اولین کسی هستی که من رو به جواب میرسونی .
    البته کمی تو نوشتن کد مشکل داشت که ، کاملش میکنم :
    If Combo1.Text = vbNullString Then Exit Sub
    Adodc1.RecordSource = "Select * From Users Where FName Like '" & Combo1.Text & "*"

    Adodc1.RecordSource = "Select * From Users Where FName Like '" & Combo1.Text & "%'" 

    کدی که شما استفاده کردین(*) فکر کنم برای FoxPro باشه .
    که معادلش تو vb میشه (%) .
    موفق باشی، بازم ممنون.

  10. #10
    کاربر دائمی آواتار M.T.P
    تاریخ عضویت
    دی 1388
    محل زندگی
    Planet Earth
    پست
    1,769

    Smile نقل قول: جستجو در بانک اطلاعاتی

    کدی که شما استفاده کردین(*) فکر کنم برای FoxPro باشه .
    که معادلش تو vb میشه (%) .
    نه مربوط به Foxpro نیست یک استاندارد در دستورات SQL هست.
    ببینید:

    در کد زیر ما میخوایم اسامی یاقت شده ، عبارت اولشون دقیقا مثل عبارت داخل Combo باشه ، یعنی در کد زیر اگه شما Ali رو تایپ کنید برای شما Ali و Ali Reza و Ali Mohammad یا هر اسم دیگه ای که اولش Ali باشه رو پیدا میکنه.( که بیشتر در جستجوی دیکشنری استفاده میشه)
    "FName Like '" & Combo1.Text & "*'"

    در کد زیر عبارت یافت شده دقیقا عبارت تایپ شده خواهد بود:
    "FName Like '" & Combo1.Text & "'"

    در کد زیر عبارت یافت شده ممکن هست در هر جای جمله یا متن موجود در رکورد باشه یعنی اگه شما کلمه Ali تایپ کنید عبارت هایی مثل:
    Ali یا Ali Reza یا Amir Ali یا AhmadAli Karimi و کلا رکوردهایی که به هر شکلی توش کلمه Ali باشه مدنظر قرار میگیره.
    "FName Like *" & Combo1.Text & "*"
    آخرین ویرایش به وسیله M.T.P : چهارشنبه 17 شهریور 1389 در 16:41 عصر

  11. #11
    کاربر تازه وارد آواتار mds_boy
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    گنبد کاووس
    پست
    94

    نقل قول: جستجو در بانک اطلاعاتی

    همه مطالبتون درسته، ولی نمیدونم کدی که من بالا نوشتم، تو vb جواب داد، ولی کد شما رو میزنم جواب نمیده ولی میدونم درسته !!!
    من خودم هم میدونم اینشکلیه، ولی شما برید تست کنید با * و % .
    و یک نکته دیگه بعد از * یک کوتیشن تکی(کاما یا همچین چیزی (')) بود اسمش نمیدونم یادم رفته !!!
    ممنون، شما هم تست کنید، تو sql * جواب میده فکر کنم، اگه جواب داد تو vb بگین مشکل کد من چیه !!!
        On Error Resume Next
    ado.CursorLocation = adUseClient
    If txtFind = "" Then
    ado.RecordSource = "SELECT * FROM T_Froshandegan ORDER BY id_ff"
    Else
    ado.RecordSource = "Select * From T_Froshandegan Where lname_ff LIKE '" & txtFind & "%'"
    End If
    ado.Refresh
    dg.Refresh
    همین کد جواب داد !!!

    اینم از داخله msdn :
    LIKE PredicateRemarks

    In a LIKE search pattern, to use the percent sign ( % ), underscore ( _ ),and left square bracket ( [ ) as literal characters rather than as wildcard characters, surround the characters with square brackets. The right square bracket ( ] ) matches itself unless preceded by a left square bracket. The range character ( - ) matches itself unless it is inside square brackets and preceded and followed by a single character.
    The following table shows patterns that illustrate using wildcard characters as literal characters.
    Pattern Meaning LIKE 'd%' d followed by any string of 0 or more characters LIKE 'd[%]' d% LIKE '_n' an, in, on, etc. LIKE '[_]n' _n LIKE '[a-cdf]' a, b, c, d, or f LIKE '[-acdf]' -, a, c, d, or f LIKE '[[]' [ LIKE ']' ] LIKE '[ab]cd]e' acd]e, or bcd]e
    Examples

    The following example returns rows consisting of the DocAuthor, DocTitle, and size properties for all files under the virtual roots "/contracts" and "/legal", written by authors whose names are "Smith", "Smyth", "Smythe", and so on, where the comment field of those documents does not contain words starting with "real", such as "realty" or "realtor".
    SELECT DocAuthor, DocTitle, size
    FROM SCOPE('"/contracts", "/legal"')
    WHERE DocAuthor LIKE 'SM_TH%'
    AND DocComments NOT LIKE 'REAL%'

  12. #12
    کاربر دائمی آواتار parselearn
    تاریخ عضویت
    مهر 1386
    محل زندگی
    مشهد || parsa.ws
    پست
    1,147

    نقل قول: جستجو در بانک اطلاعاتی

    كد صحيح:

    ado.RecordSource = "Select * From T_Froshandegan Where lname_ff LIKE '%" & txtFind & "%'"

  13. #13
    کاربر دائمی آواتار M.T.P
    تاریخ عضویت
    دی 1388
    محل زندگی
    Planet Earth
    پست
    1,769

    نقل قول: جستجو در بانک اطلاعاتی

    بله درسته کد من ناقص بود ، کاراکتر ( ' ) رو بعد از * نزاشتم.
    در واقع % همون * هست هیچ فرقی ندارن.
    این کد رو تست کنید:

    ado.RecordSource = "Select * From T_Froshandegan Where lname_ff LIKE '" & txtFind & "*'"

    پست 10 ویرایش شد.

  14. #14
    کاربر تازه وارد آواتار mds_boy
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    گنبد کاووس
    پست
    94

    Thumbs up نقل قول: جستجو در بانک اطلاعاتی

    در واقع % همون * هست هیچ فرقی ندارن.
    این کد رو تست کنید:

    ado.RecordSource = "Select * From T_Froshandegan  Where lname_ff LIKE '" & txtFind & "*'"
    این کد رو تست کردم جواب نداد ! .
    % با * فرقی میکنه .
    تو vb % کار میکنه، تست شده است.
    موفق باشید.

  15. #15
    کاربر دائمی آواتار M.T.P
    تاریخ عضویت
    دی 1388
    محل زندگی
    Planet Earth
    پست
    1,769

    Smile نقل قول: جستجو در بانک اطلاعاتی

    نقل قول نوشته شده توسط mds_boy مشاهده تاپیک
    این کد رو تست کردم جواب نداد ! .
    % با * فرقی میکنه .
    تو vb % کار میکنه، تست شده است.
    موفق باشید.

    تو دیکشنری از همین روش استفاده کردم:
    Sub Srch رو در برنامه زیر ببینید:
    https://barnamenevis.org/showpo...&postcount=427

  16. #16

    نقل قول: جستجو در بانک اطلاعاتی

    نقل قول نوشته شده توسط afsharan مشاهده تاپیک
    سلام
    من يك بانك داده اكسس دارم كه حجمش زياد چه جوري ميتونم با سرعت زياد در بانك جستجو كنم
    طريقه ايندكس كردن چه جوريه و كارش چيه
    باتشكر
    كمممممممممممممممممممممممم ك كنيد

  17. #17
    کاربر تازه وارد
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    آمل
    پست
    43

    نقل قول: جستجو در بانک اطلاعاتی

    سلام

    من میخوام با زدن دکمه ی search بر اساس نام توی adodc سرچ کنه و نتیجه رو توی datagrid نشون بده باید چه کار کنم؟؟( بانک SQL )
    اگه هم چیزی پیدا نشد یه پیغام بده


    ممنون
    آخرین ویرایش به وسیله farshidshd : جمعه 03 دی 1389 در 14:54 عصر

  18. #18
    کاربر دائمی آواتار sajad_boj70
    تاریخ عضویت
    آذر 1389
    محل زندگی
    بجنورد
    سن
    33
    پست
    296

    نقل قول: جستجو در بانک اطلاعاتی

    نقل قول نوشته شده توسط vb8334 مشاهده تاپیک
    با سلام به تمامی دوستان

    من می خواستم کدی بنویسم که در جستجوی دیتابیس برنامه به این شکل عمل کنه

    یعنی اینکه وقتی می خوام یه اسم رو جستجو کنم براساس نام یا نام خانوادگی و....

    مثلآ : اولین حرفی که زدم (م) تمام اسم ها که اولشون م دارن لیست بشن البته نمی خوام

    که توی تکست باکس بنویسم بعد بیام دکمه سرچ رو بزنم بلکه می خوام توی همون تکست

    باکس انجام بشه

    ممنون

    سلام vb8334
    من هم یک مدتی بود خیلی دنبال این مطالب میگشتم و هر کی یه جوابی داد و با زحمت زیاد به چیزی که میخواستم رسیدم
    حالا من برات یک برنامه میزارم که دقیقا همون چیزی که میخوای رو بهت میده
    http://www.persiangig.com/pages/down...m/beheshti.rar
    آخرین ویرایش به وسیله sajad_boj70 : یک شنبه 05 دی 1389 در 14:14 عصر

  19. #19
    کاربر تازه وارد
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    آمل
    پست
    43

    نقل قول: جستجو در بانک اطلاعاتی

    نقل قول نوشته شده توسط sajad_boj70 مشاهده تاپیک
    سلام دوست من
    من هم یک مدیتی بود خیلی دنبال این مطالب میگشتم و هر کی یه جوابی داد و با زحمت زیاد به چیزی که میخواستم رسیدم
    حالا من برات یک برنامه میزارم که دقیقا همون چیزی که میخوای رو بهت میده
    http://www.persiangig.com/pages/down...m/beheshti.rar

    لینک مشکل داره دانلود نمیشه

  20. #20
    کاربر دائمی آواتار sajad_boj70
    تاریخ عضویت
    آذر 1389
    محل زندگی
    بجنورد
    سن
    33
    پست
    296

    نقل قول: جستجو در بانک اطلاعاتی

    لینک تست شده.
    کاملا درسته
    ولی بازم اگه کسی مشکل داره ایمیلش رو بگه براش ایمیل کنم

  21. #21

    نقل قول: جستجو در بانک اطلاعاتی

    من يه datareport دارم كه به DataEnvironment وصل كردم و مشكلي نداره ولي ميخوام رکوردهای بین دو تاریخ رو نشون بده واسم اين كد كه گفتين رو تو كدوم قسمت بايد قرار بدم؟

  22. #22

    نقل قول: جستجو در بانک اطلاعاتی

    دوستان من یه پایگاه داده از نوع Access دارم که داده اش از طریق Data به فرم اضافه شده و اسم دادشو datAuthors گذاشتم . دو تا ComboBox با نام های cboRelOp و cboField بهش اضافه کردم و یک CommandButton مخصوص جست و جو با نام cmdGo و یک Textbox با نام txtCriteria . در لیست cboRelOp مقادیر = و > و < و >=و <= و <> و Like به کار برده شده . در لیست cboField هم مقادیر ID , UserNaem , Name , Family , Mail , YID , Tel , Income , City , Address به کار رفته . حالا میخوام وقتی بر روی دکسمه ی جست و جو که همون cmdGo_click می باشه کلیک کنم بیاد متنی رو که در txtCriteria.text وارد میکنیم رو با توجه به ComBoBox cboRelOp از یکی از مقادیری که براش انتخاب میکنیم مثل برابر یا شبیه و ... استفاده کنه و در فیلد های دیتابیسمون که در لیست cboField قرار داره سرچ کنه و مقادیرشو توی Textbox هایی که برای هر فیلد دیتابیس تو فرم گذاشتیم به نمایش در بیاره .

    vbdb.GIF

    این عکس برنامه هست
    کسی از دوستان میتونه کمکم کنه و بگه دستوری که باید توی دکمه سرچ وارد کنم چیه ؟
    ممنون میشم راهنمایی کنین

  23. #23
    کاربر دائمی آواتار sehm67
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    شاهدژ بالاده
    پست
    266

    نقل قول: جستجو در بانک اطلاعاتی

    دراین پست گذاشتن فیلتر روی adodc

    https://barnamenevis.org/showthread.p...روی-adodC#‎6

  24. #24
    کاربر دائمی آواتار ehsanocx
    تاریخ عضویت
    شهریور 1387
    محل زندگی
    گرگان
    سن
    36
    پست
    525

    نقل قول: جستجو در بانک اطلاعاتی

    نقل قول نوشته شده توسط M.T.P مشاهده تاپیک
    در کد زیر فرض بر این هست که:
    Rs رکوردست شما.
    Users جدول بانک.
    FName فیلد مورد جستجو.
    در واقع علامت ' تعیین میکند که اول عبارت مورد جستجو باید دقیقا کلمه داخل تکس باکس باشه و عبارت * در آخر کد یعنی اینکه مابقی عبارت هرچی باشه مهم نیست.

    If Text1.Text = vbNullString Then Exit Sub
    If Rs.State = 1 Then Rs.Close
    Rs.open "Select * From Users Where FName Like '" & Text1.Text & "*'"
    من از این کد استفاده کردم این پیغام رو میده وقتی روی دکمه سرچ می زنم چرا؟
    باید چیکار کنم؟
    123.JPG

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •