PDA

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



shahinfarasystem
10-09-2010, 00:42
سلام
این برنامه تقریبا اولین تجربه من توی بحث دیتا بیس هستش
یکی از همکارام برنامم رو دید و بهم گفت روشی که من به کار بردم یه جورایی دیگه استفاده نمیشه و این روش مال حدود 2003 هستش

ممکنه کمکم کنید بتونم برای اتصال به برنامم ازروش های جدید تر و سریع تر چه تغییراتی باید بدهم ؟
من راستش با sql 2000 کار میکنم export دیتابیسم رو هم به صورت یه فایل excel در آوردم آدرس آپلودش رو هم گذاشتم (البته نمی دونم که اینجوری Export کردن درسته یا نه؟؟؟)

راستی فعلا اگر ممکنه سرچ را نادیده بگیرید اول میخوام روش اتصالم درست بشه بعد سراغ اشکال یابی برم

فایل برنامم



برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

اسم دیتابیس pb و اسم جدولم Person هستش....



برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

مشتاقانه منتظر انتقادم.....
و شاید هم کمی تشویق برای دلگرمی
ممنونم:10::10::46:

عــــلی
10-09-2010, 09:25
سلام.
من از یکی از استاد هام شنیدم که میگفت:
مایکروسافت گفته توی
Connection از using استفاده کنید چون ما برای اینکار روش هایی در نظر گرفتیم که تا به موقعش نشد دیتابیس بسته نمیشه منظور همون Dispose هستش.البته نمیدونم نظر اساتید دیگه در این مورد چیه.
از نظر من بهترین روش برای اتصال و اجرای Query های sql به روش زیر هست:

1.استفاده از using در تمام کلاسهایی که ازشون استفاده موقتی میشه..مثل کد زیر:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

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

2.یکی از کارای مهم که در سرعت و افزایش بازدهی کد و در راحت تر شدن کار برنامه نویس کمک میکنه استفاده از Stored Procedures هست.
مثلاً:
شما Query های خودتونو توی SQL قسمت Stored Procedures می نویسید به صورت زیر:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

حالا برای استفاده توی سی شارپ به صورت زیر مینویسید:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

این پروسیجر که ما طراحی کردیم به سادگی در کدهای ما استفاده میشه و کاربرد داره.

البته روش های متعدد و بسیاری وجود داره که شما میتونید از اون روش ها استفاده کنید مثل استفاده از wizard های ویژوال استادیو.DataAdaptar و...

موفق باشید:11:.

shahinfarasystem
10-09-2010, 11:42
hamishebahar ممنون از لطفت جواب خیلی خوبی بهم دادی دوست عزیز

فقط چند تا سوال دارم اگر ممکنه:


استفاده از using در تمام کلاسهایی که ازشون استفاده موقتی میشه

1) این Using ها از دسته همون Using هایی هستند که بالای برناممون Add می کنیم؟ به نظرم یه کم فرق دارند
ممکنه در موردشون یکی دو خط توضیح بدی؟

2) توی اولین کدی که زحمت کشیدی نوشتی باید یه کلاس درست کنم کد شبیه شما رو توی اون بریزم بعد اون رو توی برنامم استفاده کنم درسته؟؟؟

ممنونم
و همچنین از رنگ بندی زیبات تو پاسخ دهی لذت بردم .....

کامیاب باشی

عــــلی
10-09-2010, 20:44
سلام.

و همچنین از رنگ بندی زیبات تو پاسخ دهی لذت بردم .....
ان شالله زندگیت همیشه رنگی باشه

بسیاری از کلاس های که ما ازشون استفاده میکنیم خاصیت Dispose دارن.یعنی تا این Dispose یا تخریب کلاس اجرا نشه کلاس همینطور باقی میمونه.
مثلاً شما از کلاس System.IO.FileInfo استفا میکنید و فایل رو Open میکنید...یا اونو Access میکنید و سطح دستریشو محدود می کنید...این کلاس تا زمانی که بسته نشه یا به قول معروف Dispose نشه فایل باز شده میمونه و همینطور سطح دسترسی اش محدود میمونه و این یعنی کلاس هنوز داخل حافظه مونده و در حال استفاده است.
این using برای کلاس هایی که این خاصیت رو دارن هست که خودش میاد بعد از اتمام کلاس کد Dispose رو اجرا میکنه و کلاس رو میبنده.
میتونی امتحان کنی توی یکی از کدهات مثلاً مد Dispose یک فرم رو اجرا کن ببین چه اتفاقی میوفته.

2) توی اولین کدی که زحمت کشیدی نوشتی باید یه کلاس درست کنم کد شبیه شما رو توی اون بریزم بعد اون رو توی برنامم استفاده کنم درسته؟؟؟
این کد خودش یک کلاس هست:46:
مثال استفاده:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
البته ابتدا باید ConnectionString درست مشخص بشه ها.

ولی روش دوم بهینه تره نمیدونم چرا خودم از روش اول استفاده میکنم:31:.
موفق و پیروز باشید:11:.

shahinfarasystem
12-09-2010, 12:47
ممنونم هميشه بهار عزيز

امتحان مي كنم بهت خبر ميدم...