مشاهده نسخه کامل
: جستجو بین دو عدد در بانک
karbon2010
13-10-2009, 10:59
من در حال ساخت پروزه هستم اما متاسفانه با چند مشکل روبرو شده ام خیلی هم گشتم اما به نتیجه مطلوب نرسیدم
پروژه من با اکسس و adodc هست و پروژه هم باید با همین بانک و ابزار ساخته شود
1- من در قسمت جستجو نیاز به جستجو بین دو عدد نیاز دارم که از چند کد استفاده کردم اما متاسفانه جواب نداد
2-مثل مشکل قبلی با این تفاوت که من نیاز به جستجو بین دو تاریخ
منظور من جستجو بین دو عدد و همچنین دو تاریخ است بطور مثال وقتی من در 2 کادر جستجو اعداد 5 و 10 را وارد می کنم برنامه اعداد 5,6,7,8,9,10 را برایم جستجو کند یا 1387/10/10 و 1387/12/10 برنامه فیلد های مربوط به این 60 روز را جستجو نماید
لطفا اگر ممکن است کدی در اختیارم بگذارید که قبلا خودتان استفاده کرده اید و همچنین توضیح مختصری درباره کد بنویسید
ممنون از همه شما
VBYOFSKI
13-10-2009, 12:11
واسه این کار بهتره یه پرس و جو درست کنی و از دستورات SQL استفاده کنی.
احتمالا تا ظهر یه نمونه میزارم.
ویرایش: شما میخوای گزارش بگبری و این اتفاقات تو گزارشت بیوفته؟
VBYOFSKI
13-10-2009, 14:04
این برنامه. امیدوارم مفید باشه.
فقط Database رو کپی کنید تو C که دیگه آدرس دهی نخواد.
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
karbon2010
14-10-2009, 00:32
سلام
حالا نمیشه یک راهی بگی که بشه با اکسس و ado بشه این کار را انجام داد
بعدش هم برای چاپ فعلا نیاز نیست به dg وصل می کنم
VBYOFSKI
14-10-2009, 14:34
سلام
حالا نمیشه یک راهی بگی که بشه با اکسس و ado بشه این کار را انجام داد
بعدش هم برای چاپ فعلا نیاز نیست به dg وصل می کنم
اینم با اکسسه ولی به جای ado با DataEnvironment ارتباط برقرار میکنه و و از دستورات SQL استفاده میکنه. (چون سریع و دقیق و راحت ترن.)
این راهی که شما میگید رو باید امتحان کنم ببینم چه جوریاست.
پیداکردم بهت میگم.
VBYOFSKI
14-10-2009, 16:34
اینم با ADO هست ولی بازم با دستورات SQL.
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
karbon2010
14-10-2009, 21:28
سلام
علت اینکه در جستجو فیلدهای اضافی هم نشان داده میشه چیه ؟
مثلا ما اعداد بین 1 تا 5 را جستجو می کنیم چرا بجای اینکه 1.2.3.4.5 را نشان بدهد مثلا فیلدهایی را که با اعداد نوشته شده مرتبط هستند را نشان می دهد یعنی اعداد 10تا 19 بخاطر عدد 1 و 20 تا 29 بخاطر عدد 2 و.... را نشان می دهد
می دونی دلیلش چیه و چگونه رفع می شود
VBYOFSKI
15-10-2009, 12:39
سلام
علت اینکه در جستجو فیلدهای اضافی هم نشان داده میشه چیه ؟
مثلا ما اعداد بین 1 تا 5 را جستجو می کنیم چرا بجای اینکه 1.2.3.4.5 را نشان بدهد مثلا فیلدهایی را که با اعداد نوشته شده مرتبط هستند را نشان می دهد یعنی اعداد 10تا 19 بخاطر عدد 1 و 20 تا 29 بخاطر عدد 2 و.... را نشان می دهد
می دونی دلیلش چیه و چگونه رفع می شود
آخخخخخخخخخ، اینجا اشتباه از من بود. :41:
فیلد Number رو به جای اینکه Byte تعریف کنم Binary تعریف کردم، واسه همینم عدد رو رشته ای حساب میکرد.
بعد اینکه نوع فیلد رو تغییر دادی باید دستور SQL رو هم مثل زیر تغییر بدی.
دوستور قبلی:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
دستور جدید:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
karbon2010
15-10-2009, 13:45
سلام
ممنون حالا درست شد
خوب تا اینجا که مشکلی فعلا نداریم حالا چکار کنیم بین دو تاریخ را جستجو کند
VBYOFSKI
15-10-2009, 14:37
سلام
ممنون حالا درست شد
خوب تا اینجا که مشکلی فعلا نداریم حالا چکار کنیم بین دو تاریخ را جستجو کند
نمیدونم چه قدر با دستورات SQL آشنایی داری ولی یه توضیح کوچیک میدم کارت راه بیوفته.
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنیدتو این کد SELECT * FROM tbltest ما یه بازه از فیلدهای مورد نظر که تو تیبل tbltest هستن در نظر میگیریم. ( چون از * استفاده شده یعنی همشون.
دستور WHERE واسه شرط گزاشتن استفاده میشه. یه جورایی همون IF هست.
Number هم که نام فیلدی که شرط باید رو اون اکتحان بشه هست، ادامه هم که همون شرطه.
این کد الان تمام رکوردها رو نشون میده ولی به شرطی که فیلد Number اونا بزرگتر از 5 باشه.
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنیدچون شما میخوای محدوده بین 2 عدد رو نشون بدی باید از BETWEEN استفاده کنی. شکل کلیش اینجوریه:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنیدحالا واسه تاریخ به جای Number اسم فیلد تاریخ رو بنویس و اعداد رو هم به تاریخ تغییر بده.
ولی چون از تاریخ شمسی استفاده میکنه احتمالا فیلد از نوع رشته ای هست. در این صورت باید اول و آخر تاریخ یه سینگل کوتیشن بزاری. یعنی اینجوری:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنیدامیدوارم مفید بوده باشه. :11:
karbon2010
16-10-2009, 00:35
سلام
میشه همین روشی را که عرض کردید با مثال توضیح دهید چون من خودم امتحان کردم نشد
ممنون از شما
لطفا از مثال قبلی استفاده کنید و اینکه با همان دو کادر متن بشه تاریخ را وارد نمود
ایا نیاز هست که در بانک من نوع فیلد را تغییر بدهم اگه نیاز است به چی تغییر بدهم به date/time خوبهچ
ممنون از شما
VBYOFSKI
16-10-2009, 16:44
سلام
میشه همین روشی را که عرض کردید با مثال توضیح دهید چون من خودم امتحان کردم نشد
ممنون از شما
لطفا از مثال قبلی استفاده کنید و اینکه با همان دو کادر متن بشه تاریخ را وارد نمود
ایا نیاز هست که در بانک من نوع فیلد را تغییر بدهم اگه نیاز است به چی تغییر بدهم به date/time خوبهچ
ممنون از شما
اون روش از طریق رشته ای بود که به مشکل بر میخوره.
شما فیلد رو تغییر بدین به Date/Time و از دستور زیر استفاده کنین، من امتحان کردم جواب میده.
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
karbon2010
19-10-2009, 13:59
سلام
ممنون
یه سوال دیگه در همین رابطه داشتم
چه طوری بین دو فیلد جستجو کنیم منظور این است که مثلا کسانی که در تاریخ 1387/10/27 مثلا 2500 تومان پول داده اند را نشان بده
ممنون
VBYOFSKI
20-10-2009, 13:23
سلام
ممنون
یه سوال دیگه در همین رابطه داشتم
چه طوری بین دو فیلد جستجو کنیم منظور این است که مثلا کسانی که در تاریخ 1387/10/27 مثلا 2500 تومان پول داده اند را نشان بده
ممنون
سلام.
واسه این کار باید تو دستورت شرط جدید رو با شرط قبلی AND کنی.
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
این الان اونایی که Number شون بالای 5 و تاریخشون 5/1/1388 هست رو نشون میده. :11:
sinaaeeni
20-10-2009, 15:03
سلام دوست گرامی
یه سورس فایل جستجوی بین 2 تاریخ براتون تقدیم میکنم امیدوارم با توجه به این سورس بتونی مشکلت رو حل کنی
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
karbon2010
20-10-2009, 17:02
سلام
دست هر دوتایتان درد نکنه
ممنون
karbon2010
21-10-2009, 23:45
سلام
سلام.
واسه این کار باید تو دستورت شرط جدید رو با شرط قبلی AND کنی.
کد:
SELECT * FROM tblTest WHERE Number > 5 AND Date2 = #5/1/1388#
این الان اونایی که Number شون بالای 5 و تاریخشون 5/1/1388 هست رو نشون میده.
میشه همین کدها را در داخل برنامه قرار دهید
نمی دونم برای چی ارور می ده
از دو کادر متن دوباره استفاده کنید
ممنون
VBYOFSKI
22-10-2009, 13:08
سلام.
این لینک دانلود:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
سلام من یه بانک اطلاعاتیAccess با دو فیلد Age و Name ...یک کنترل listbox هم بر روی فرم...
چه طور میشه یه سرچ درست کرد که مثلا اسم تمام افرادی که سن آنها 18 هست در این Listbox لیست بشه ...
ممنون
VBYOFSKI
23-10-2009, 15:08
سلام من یه بانک اطلاعاتیAccess با دو فیلد Age و Name ...یک کنترل listbox هم بر روی فرم...
چه طور میشه یه سرچ درست کرد که مثلا اسم تمام افرادی که سن آنها 18 هست در این Listbox لیست بشه ...
ممنون
سلام.
بهتر بود یه تاپیک جدا میزدید واسه سوالتون، ولی جوابتون:
واسه این کار از شی DBList که از Componnet باید اضافه شه استفاده کنید چون خودش راحت به دیتابیس وصل میشه.
karbon2010
25-10-2009, 18:38
سلام
همین هم که فرستادی ارور میدهیه امتحان بکن
VBYOFSKI
26-10-2009, 12:32
میشه متن اروری که میده رو بزاری، احتمالا دستورا با نوع داده تو دیتابیس مچ نیستن.
karbon2010
27-10-2009, 08:54
سلام
به شکر خدا درستش کردم
ممنون از شما از همین دستوری که شما گذاشته بودید به شکلی دیگر با کمی از تغییرات استفاده کردم
ممنون
سلام دوست گرامی یه سورس فایل جستجوی بین 2 تاریخ براتون تقدیم میکنم امیدوارم با توجه به این سورس بتونی مشکلت رو حل کنی
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید سلام دوست من .من هم میخواح بین دو تاریخ جستج کنم ولی با این تفاوت با ویرژال 2008 و بدون ado , data با فرمان sql اگه میشه کمکم کنید
samasara
21-09-2012, 17:38
آخی هنوز جوابتو پیدا نکردی دلم برات سوخت!!!:37:
برات به جواب ساده گذاستم و همین طور یه پروژهی نمونه اما برا اجرای هر دستور کویری باید اول به بانک وصل بشی ودستور روی بانک اطلاعاتی اجرا بشه و پایان !!!
samasara
23-09-2012, 10:32
من بلد نیستم فرمان SQL رو بدون ADO به سرور بدم اگه کسی بلده بما هم یاد بده...
sosani2007
26-09-2012, 11:06
من بلد نیستم فرمان SQL رو بدون ADO به سرور بدم اگه کسی بلده بما هم یاد بده...
منظور شما از سرور ،اطلاعات بانک روی سیستم هست یا اطلاعات بانکی روی اینترنت
اگر امکان داره منظورتون رو کامل مطرح کنید
samasara
29-09-2012, 12:39
سلام
منظورم از روی بانک اطلاعاتیه
من نمی دونم چطور بدون استفاده از ado به بابک فرمان sql بفرستم. ..
سوال:
1- اصلا این کار شدنیه؟ (یعنی بدون تعریف ado و شی command می شه مستقیما به بانک دستور رو فرستاد)
2- نحوه ی کار به چه ترتیبیه؟
مرسی!:20:
sosani2007
02-10-2012, 08:02
سلام
منظورم از روی بانک اطلاعاتیه
من نمی دونم چطور بدون استفاده از ado به بابک فرمان sql بفرستم. ..
سوال:
1- اصلا این کار شدنیه؟ (یعنی بدون تعریف ado و شی command می شه مستقیما به بانک دستور رو فرستاد)
2- نحوه ی کار به چه ترتیبیه؟
مرسی!:20:
آره این کار احتمالا شدنی هستش
شما اگر یک سرچ کوچکی در اینترنت بزنید و در باره ساختار Acsses اطلاعاتی رو جمع کنی می تونی با استفاده از فایل های باینری خودت یک اکسس درست کنی یا حتی اطلاعاتت رو ویرایش کنی
samasara
02-10-2012, 09:30
من بیشتر با اوراکل کار می کنم اما مشکل من اینه که متونم در بانک اطلاعاتی کارها مورد نظرم رو انجام بدم یا اینکه دستورات sql رو راشون بفرستم اما نه به صورت مستقل !!! یعنی اگه داخل یک باتون فقط دستورات رو بنویسیم هیچ کاری اجام نیشه که هیچ کلی ایراد هم می گیره!! Ado می یاد دستورات رو بصورت متن به بانک اطلاعاتی حالا هر چی می خواد باشه میفرسته !! اما من می خواهم بدون تعریف ado این کار رو مستقل اجام بدم!
sosani2007
02-10-2012, 09:39
من بیشتر با اوراکل کار می کنم اما مشکل من اینه که متونم در بانک اطلاعاتی کارها مورد نظرم رو انجام بدم یا اینکه دستورات sql رو راشون بفرستم اما نه به صورت مستقل !!! یعنی اگه داخل یک باتون فقط دستورات رو بنویسیم هیچ کاری اجام نیشه که هیچ کلی ایراد هم می گیره!! Ado می یاد دستورات رو بصورت متن به بانک اطلاعاتی حالا هر چی می خواد باشه میفرسته !! اما من می خواهم بدون تعریف ado این کار رو مستقل اجام بدم!
آیا شما با ساختار پایگاه داده اکسس آشنایی کامل رو دارید ؟
مثلاً اگر شما یک سرچی توی وب بزنی متوجه می شی که مثلاً ساختار فایل های زیپ چجوری که با یکسری کاراکتر های ناشناس از هم جدا می شن و از یک هیدر تشکیل شدن
samasara
02-10-2012, 10:12
ساختار فایل های زیپ چجوری که با یکسری کاراکتر های ناشناس از هم جدا می شن و از یک هیدر تشکیل شدن
راستش توجه نشدم!میشه یکم بیشتر توضیح بدید...
sosani2007
02-10-2012, 20:17
راستش توجه نشدم!میشه یکم بیشتر توضیح بدید...
سلام دوست عزیز به این لینک سر بزنی کمکت می کنه به عبارتی دیگه هر فایل یک نوع ساختاری داری مثل فایل های فشرده به این لینک سر بزن
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
vBulletin , Copyright ©2000-2025, Jelsoft Enterprises Ltd.