مشاهده نسخه کامل
: combobox
با سلام
فرض كنيد يه جدول داريم كه توي يكي از فيلدهاش اطلاعاتي وجود داره كه مثلا ممكنه تكراري باشه.حالا روي فرم ميخوايم يك dbcombobox داشته باشيم و اطلاعات ان فيلد را در اون نمايش بديم منتها از اون اطلاعاتي كه تكراريه فقط يك نمونش باشه .تو حالت معمولي فقط يك ركورد را نمايش مي ده
فقط نگيد آقا سرچ كن چون اين كار رو كردم و بعضي از مطالب رو ديدم
با تشكر
مرد مباح
04-12-2007, 11:25
به بخش فرامين SQL برو و ببين بايد چي كار كني.
يك كد هست كه اونجا نوشته و اين كارو دقيقاانجام ميده.
راه سختترش هم هست كه بايد دونه دونه ركوردها رو بخوني و اگه توي ComboBox قبلا ADD نشده باشه، اونو اضافه كن.
موفق باشي.
F A R H A D
04-12-2007, 12:29
در همون بخش sql که مرد مباح گفت distinct رو جستجو کن
delphianddotnet
04-12-2007, 13:17
سلام
نیاز به نوشتن کد اضافی نیست
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
فرض کن یه جدول داریم که اطلاعات فیلد Type اون تکراری است حالا اگه با تابه بالا کار کنی هیچ وقت تکراری وارد نمیکنه اگه خواستی کد کاملشو برات بزارم
مرد مباح
04-12-2007, 13:25
دوست عزيز.
اين همون راه دومي بود كه من گفتم.
بايد يك While بزاري و بعد از اين فرمان هم Next.
به همين دليل سزعت كمي پائين مياد. با فرمان SQL خيلي سريعتر نتيجه ميگيري.
موفق باشي
با سلام و تشكر
كارهايي رو كه گفتيد انجام مي دم ببينم چي ميشه البته خودم هم يك راه پيدا كردم و جواب داد بصورت زير :
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اما چيز جالبي كه وجود داشت توي سطر 8 بعد از adoqouery1گزينه اي به نام fieldbyname وجود نداشت اما من نوشتم و ديدم جواب داد كه حققتش خودمم فكر نمي كردم جواب بده چون از دلفي بعيد بود .
delphianddotnet
05-12-2007, 13:53
سلام
اگه از کد بالا استفاده میکردی 5 خط اول لازم نبود.
F A R H A D
05-12-2007, 15:40
البته خودم هم يك راه پيدا كردم و جواب داد
راه پیشنهادی ما هم به همینجا ختم میشد
اما چيز جالبي كه وجود داشت توي سطر 8 بعد از adoqouery1گزينه اي به نام fieldbyname وجود نداشت اما من نوشتم و ديدم جواب داد كه حققتش خودمم فكر نمي كردم جواب بده چون از دلفي بعيد بود
به این خاطر هست که در زمان طراحی query شما close هست. به هر حال روش کار همین هست.
F A R H A D
05-12-2007, 15:52
اگه از کد بالا استفاده میکردی 5 خط اول لازم نبود
دلیل استفاده از دستورات sql رو مرد مباح گفت:
بايد يك While بزاري و بعد از اين فرمان هم Next.
به همين دليل سزعت كمي پائين مياد. با فرمان SQL خيلي سريعتر نتيجه ميگيري
برنامه نویس باید زمانی رو در نظر بگیره که جدول هزاران رکورد داره! فکرش هم عذاب آوره که تمام رکوردها از اول تا آخر در یک حلقه و با یک شرط چک بشن. مخصوصا زمانی که جدول با کنترلهای روی فرم هم در ارتباط باشه.
پس بهترین روش بهینه ترین روش هست نه روشی که کمترین کد رو بخواد.
موفق باشید
vBulletin , Copyright ©2000-2025, Jelsoft Enterprises Ltd.