آخرين پست هاي ارسالي انجمن ايران دلفي

تماشای رایگان فیلم ایرانی ، خارجی و کودک آکادمی دلفی
نمایش نتایج: از 1 به 21 از 21

موضوع: فیلتر کردن اطلاعات بانک اطلاعاتی

  1. #1
    کاربر سایت msi1393 آواتار ها
    تاریخ عضویت
    August 2014
    نوشته ها
    36
    تشکر ها
    13
    تشکر شده 14 بار در 11 ارسال.

    فیلتر کردن اطلاعات بانک اطلاعاتی

    با سلام و عرض خسته نباشید به همه دوستان
    من یه برنامه دارم مینویسم که بانک اطلاعاتیش Sql هست.
    و برای فیلتر کردن اطلاعات به کمک نیاز دارم
    میخوام به این صورت عمل کنم که وقتی داخل Edit حرف اول یک اسم وارد میشه جدول بر اساس اون فیلتر بشه، (برای مثال وقتی حرف آ وارد میشه تمام رکوردهای از جدول که فیلد مورد نظر با حرف آ شروع میشه فیلتر بشن)
    ممنون میشم اگه راهنمایی کنید.

  2. #2
    مدیر انجمن meyti آواتار ها
    تاریخ عضویت
    August 2013
    نوشته ها
    143
    تشکر ها
    134
    تشکر شده 78 بار در 55 ارسال.

    پاسخ : فیلتر کردن اطلاعات بانک اطلاعاتی

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

    کد:
    adoquery1.SQL.Clear; adoquery1.SQL.Add('SELECT * from tablename where (((feild1) like N''%'+Edit1.Text+'%''));'); adoquery1.Open;


  3. 3 کاربر مقابل از meyti عزیز به خاطر این پست مفید تشکر کرده اند .

    admin (25 / December / 2014),b_e_shamlu (06 / January / 2015),msi1393 (02 / August / 2015)

  4. #3
    مدیر انجمن b_e_shamlu آواتار ها
    تاریخ عضویت
    July 2013
    محل سکونت
    کرج
    سن
    53
    نوشته ها
    123
    تشکر ها
    149
    تشکر شده 94 بار در 46 ارسال.

    پاسخ : فیلتر کردن اطلاعات بانک اطلاعاتی

    با سلام
    دوست عزیز همانطور جناب مهندس [برای مشاهده لینک ها شما باید عضو سایت باشید برای عضویت در سایت بر روی اینجا کلیک بکنید] دستور را برای شما ارسال کردن
    فقط این موضوع را خدمت شما عرض کنم که علامت % در دوطرف متن شما قرار می گیرد.وکار او در این حالت این است که تمامی رکوردهایی که حرف آ در آن بکار رفته است و یادتان باشد تمام رکوردهای که اون حرف درش وجود داشته باشد
    اگر میخواهید این حرف در آخر یا اول یا وسط کلمات رکورد باشد باید از این علامت به درستی استفاده کنید این علامت اعلام میدارد هرچی باشد به (علاوه فقط این کلمه) امید است که به درستی برای شما توضیح داده باشم با عرض پوزش از مهندس عزیز چون من خود وقتی این دستور را استفاده میکردم با این مشکل برخورد نمودم و تا مطلع شدم خیلی طول کشید.
    ویرایش توسط b_e_shamlu : 31 / December / 2014 در ساعت 08:37 AM
    دلفی کاران را دوست دارم [برای مشاهده لینک ها شما باید عضو سایت باشید برای عضویت در سایت بر روی اینجا کلیک بکنید]

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



  5. 2 کاربر مقابل از b_e_shamlu عزیز به خاطر این پست مفید تشکر کرده اند .

    meyti (31 / December / 2014),msi1393 (02 / August / 2015)

  6. #4
    کاربر سایت flightsazan آواتار ها
    تاریخ عضویت
    January 2015
    نوشته ها
    10
    تشکر ها
    1
    تشکر شده 0 بار در 0 ارسال.

    پاسخ : فیلتر کردن اطلاعات بانک اطلاعاتی

    سلاماین پست کمی قدیمی است ولی سوالی دارم وقتی کاراکتر ها کوچک و بزرگ هستند فیلتر درست در نمی آید مثلا در جدول اینگونه نوشته باشیم:Table ودر فیلتر بنویسیم table یا TABLE جدول خالی در می اید و دچار خطا میشه!چطور کاری کنیم به بزرگی و کوچکی حروف حساس نباشه چون معلوم نیست در جدول هم چگونه نوشته شده!
    مرسی حسن

  7. #5
    کاربر سایت flightsazan آواتار ها
    تاریخ عضویت
    January 2015
    نوشته ها
    10
    تشکر ها
    1
    تشکر شده 0 بار در 0 ارسال.

    پاسخ : فیلتر کردن اطلاعات بانک اطلاعاتی

    دستور کار شده:

    procedure TForm1.ADOQuery2FilterRecord(DataSet: TDataSet;
    var Accept: Boolean);
    begin
    ACCEPT:= (
    (FORM1.Edit1.Text='')OR
    (POS(FORM1.Edit1.Text,FORM1.ADOQuery2.FIELDBYNAME( 'NAME').AsString)>0))
    end;


  8. #6
    مدیر انجمن مجید آواتار ها
    تاریخ عضویت
    January 1970
    محل سکونت
    تهران
    نوشته ها
    167
    تشکر ها
    58
    تشکر شده 201 بار در 100 ارسال.

    پاسخ : فیلتر کردن اطلاعات بانک اطلاعاتی

    یاید از کوئری استفاده کنید
    مانند مثالی که در بالاتر زده شده است
    برای اینکه حروف بزرگ و کوچک را هم شامل شود باید از توابع uppercase و lowercase استفاده کنید

  9. #7
    کاربر سایت flightsazan آواتار ها
    تاریخ عضویت
    January 2015
    نوشته ها
    10
    تشکر ها
    1
    تشکر شده 0 بار در 0 ارسال.

    پاسخ : فیلتر کردن اطلاعات بانک اطلاعاتی

    در فیلتر جدول با دستور LIKE وقتی مورد در جدول نباشه خطا می ده!
    شکل دستور:
    کد:
    ADOQuery2.Close;
    ADOQuery2.SQL.Clear;
    ADOQUERY2.SQL.Add(('select * from SUBMENUE where name like "'+Edit1.Text+'%"'));
    ADOQuery2.Open;
    FORM1.TreeView1.Items.Clear;
    FORM1.Timer6.Enabled:=TRUE;
    چطور فیلتر را تنظیم کنیم که اگه مورد جستجو در جدول نباشه اتفاقی هم نیفته!
    مرسی
    حسن

  10. #8
    مدیر انجمن مجید آواتار ها
    تاریخ عضویت
    January 1970
    محل سکونت
    تهران
    نوشته ها
    167
    تشکر ها
    58
    تشکر شده 201 بار در 100 ارسال.

    پاسخ : فیلتر کردن اطلاعات بانک اطلاعاتی

    اول بفرمایید دقیقا چه خطایی میده . ظاهرا دستورات ایرادی نداره . شاید خطایی که فرمودید مربوط به قسمت دیگری باشه . لطفا تصویر یا متن خطا را اینجا بگذارید

  11. #9
    کاربر سایت flightsazan آواتار ها
    تاریخ عضویت
    January 2015
    نوشته ها
    10
    تشکر ها
    1
    تشکر شده 0 بار در 0 ارسال.

    پاسخ : فیلتر کردن اطلاعات بانک اطلاعاتی

    با سپاس:
    تصاوير پيوست شده تصاوير پيوست شده
    • نوع فایل: jpg t2.JPG‏ (92.3 کیلو بایت, 0 نمايش)

  12. #10
    کاربر سایت flightsazan آواتار ها
    تاریخ عضویت
    January 2015
    نوشته ها
    10
    تشکر ها
    1
    تشکر شده 0 بار در 0 ارسال.

    پاسخ : فیلتر کردن اطلاعات بانک اطلاعاتی

    تصویر خطا از محیط دلفی 2010 در حال اجرا:
    تصاوير پيوست شده تصاوير پيوست شده
    • نوع فایل: jpg t3.JPG‏ (174.4 کیلو بایت, 1 نمايش)

  13. #11
    کاربر سایت flightsazan آواتار ها
    تاریخ عضویت
    January 2015
    نوشته ها
    10
    تشکر ها
    1
    تشکر شده 0 بار در 0 ارسال.

    پاسخ : فیلتر کردن اطلاعات بانک اطلاعاتی

    البته از دستور:
    کد:
    ACCEPT:=(
     (FORM1.Edit1.Text='')OR
     (POS(FORM1.Edit1.Text,FORM1.ADOQuery2.FIELDBYNAME('NAME').AsString)>0))
    هم استفاده کردم ولی مشکل اینکه در این حالت در انگلیسی فرقی بین کاراکتر ها قایل میشه مثلا حروف بزرگ بزنید دیگه حروف کوچک را نشان نمی ده!
    مرسی
    حسن

  14. #12
    مدیر انجمن مجید آواتار ها
    تاریخ عضویت
    January 1970
    محل سکونت
    تهران
    نوشته ها
    167
    تشکر ها
    58
    تشکر شده 201 بار در 100 ارسال.

    پاسخ : فیلتر کردن اطلاعات بانک اطلاعاتی

    از این تصاویر چیزی معلوم نیست اگه میتونید سورس را بگذارید تا بدقت دیباگ کنم

  15. کاربر مقابل از مجید عزیز به خاطر این پست مفید تشکر کرده است:

    flightsazan (08 / December / 2015)

  16. #13
    مدیر انجمن meyti آواتار ها
    تاریخ عضویت
    August 2013
    نوشته ها
    143
    تشکر ها
    134
    تشکر شده 78 بار در 55 ارسال.

    پاسخ : فیلتر کردن اطلاعات بانک اطلاعاتی

    نقل قول نوشته اصلی توسط flightsazan نمایش پست ها
    تصویر خطا از محیط دلفی 2010 در حال اجرا:
    سلام
    این خطا مربو به سینتکس بوده و یه جایی در کدها اشتباه تایپی دارید
    احتمالا بجای ' که دوبار پشت سر هم هستند از " استفاده شده ؟
    با همون دستور حتی اگه چیزی پیدا نشه نباید ارور بده

  17. #14
    کاربر سایت flightsazan آواتار ها
    تاریخ عضویت
    January 2015
    نوشته ها
    10
    تشکر ها
    1
    تشکر شده 0 بار در 0 ارسال.

    پاسخ : فیلتر کردن اطلاعات بانک اطلاعاتی

    سلام
    فایل اضافه گردید
    در جستجو با فیلتر خود دلفی و اسکیوال یا جواد ناکافی است و یا خطا دارد مثلا فقط کاراکتر های بزرگ دیده می شود.مثال: با گزینه فیلتر filterrecord در ado
    مرسی
    حسن
    فايل هاي پيوست شده فايل هاي پيوست شده

  18. #15
    مدیر انجمن مجید آواتار ها
    تاریخ عضویت
    January 1970
    محل سکونت
    تهران
    نوشته ها
    167
    تشکر ها
    58
    تشکر شده 201 بار در 100 ارسال.

    پاسخ : فیلتر کردن اطلاعات بانک اطلاعاتی

    سورس ناقص بود . Form2 و کامپوننت های Skin در سورس وجود نداشت.
    دوست عزیز حدود یک ساعت بین کد های شما چرخیدم و حقیقتا نفهمیدم هدفتان از این برنامه چه بود!
    اگر تازه کارید و در حال یادگیری هستید که هیچ. به شما بابت پشتکارتان خسته نباشید میگویم و امیدوارم در آینده یک برنامه نویس پنجه طلایی بشوید.

    ولی اگر قرار است این پروژه را به مشتری تحویل دهید و بابت آن وجهی دریافت کنید به شما اکیدا توصیه میکنم منصرف شوید . جسارتا بنده با حدود 14 سال سابقه در برنامه نویسی جرات نمیکنم برای یک پروژه ساده هم با روش شما کد نویسی کنم. مطمئن باشید عواقب ویرایش این کد دیر یا زود دامنگیر خودتان خواهد شد.


  19. #16
    مدیر انجمن meyti آواتار ها
    تاریخ عضویت
    August 2013
    نوشته ها
    143
    تشکر ها
    134
    تشکر شده 78 بار در 55 ارسال.

    پاسخ : فیلتر کردن اطلاعات بانک اطلاعاتی

    سلام - فایل ناقص آپلود شده - بماند
    دستور زیر رو تست کردم به حروف بزرگ و کوچک حساس نیست و همه رو میاره .
    کد:
    ADOQuery1.SQL.Clear;
    ADOQuery1.SQL.Add('select * from table1 where field1 like ''%'+Edit1.Text+'%''');
    ADOQuery1.Open;
    ویرایش توسط meyti : 08 / December / 2015 در ساعت 09:05 AM

  20. #17
    کاربر سایت flightsazan آواتار ها
    تاریخ عضویت
    January 2015
    نوشته ها
    10
    تشکر ها
    1
    تشکر شده 0 بار در 0 ارسال.

    پاسخ : فیلتر کردن اطلاعات بانک اطلاعاتی

    تو انگلیسی
    خطا میده
    مثلا اگه حرف مورد جستجو در جدول نباشه و کاراکترهای بزرگ و کوچک
    مرسی
    ویرایش توسط meyti : 08 / December / 2015 در ساعت 12:40 PM دلیل: اشتباه شد

  21. #18
    کاربر سایت flightsazan آواتار ها
    تاریخ عضویت
    January 2015
    نوشته ها
    10
    تشکر ها
    1
    تشکر شده 0 بار در 0 ارسال.

    پاسخ : فیلتر کردن اطلاعات بانک اطلاعاتی

    این هم با توضیحات در کنار کدها اضافه کردم بدون کامپوننت راستی دلفی من 2010 است
    مرسی
    حسن

  22. #19
    مدیر انجمن مجید آواتار ها
    تاریخ عضویت
    January 1970
    محل سکونت
    تهران
    نوشته ها
    167
    تشکر ها
    58
    تشکر شده 201 بار در 100 ارسال.

    پاسخ : فیلتر کردن اطلاعات بانک اطلاعاتی

    سلام
    لطفا به این چند تا لینک یه نگاهی بنداز
    [برای مشاهده لینک ها شما باید عضو سایت باشید برای عضویت در سایت بر روی اینجا کلیک بکنید]


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


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

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

    امیدوارم براتون مفید باشه

    و در مورد مشکل کوئری شما:
    فکر میکنم باید برای جستجوی یک عبارت به صورت کوچک و بزرک از دو شرط like استفاده کنی مثل زیر:


    کد:
    select * from table1 where field1 like '[A]%' or field1 like '[a]%'
    و باید مقدار A و a را با کاراکتر تایپ شده در Edit1.txt جایگزین کنی

    در مورد اصول کد نویسی که سوال کردید هم بد نیست در گوگل جستجویی در میان سایت های فارسی زبان بیاندازید . حتما منابع خوبی پیدا خواهید کرد. گوگل برای برنامه نویس مثل عصای سفید برای نابیناست. من که خیلی ازش استفاده میکنم. برای سر نخ هم بهتره دنبال شیء گرایی بگردید.

    موفق باشید

  23. #20
    کاربر سایت flightsazan آواتار ها
    تاریخ عضویت
    January 2015
    نوشته ها
    10
    تشکر ها
    1
    تشکر شده 0 بار در 0 ارسال.

    پاسخ : فیلتر کردن اطلاعات بانک اطلاعاتی

    چشم می بینم مرسی وقت می زارید
    حسن

  24. #21
    مدیر انجمن meyti آواتار ها
    تاریخ عضویت
    August 2013
    نوشته ها
    143
    تشکر ها
    134
    تشکر شده 78 بار در 55 ارسال.

    پاسخ : فیلتر کردن اطلاعات بانک اطلاعاتی

    نقل قول نوشته اصلی توسط flightsazan نمایش پست ها
    تو انگلیسی
    خطا میده
    مثلا اگه حرف مورد جستجو در جدول نباشه و کاراکترهای بزرگ و کوچک
    مرسی
    سلام مجدد /
    حروف فارسی که کوچک و بزرگ که نداره ! منم با انگلیسی تست زدم ! درست جواب میده .

علاقه مندي ها (Bookmarks)

علاقه مندي ها (Bookmarks)

مجوز های ارسال و ویرایش

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