سلام.
عیدتون مبارک.
به درخواست یکی از دوستان این متن رو نوشتم. اما چون سوال خوبی بود به عنوان پست در این forum گذاشتمش.
فکر میکنم همگی درباره database ها و اهمیتشون آگاهی داشته باشن. نکته ای که در رابطه با database
همیشه وجود داره و مطرح میشه ارتباط یک DB با یک interface هست. نحوه اتصال به DB و خوندن اطلاعات از
اون. این ارتباط با وجود چهارچوب .Net بسار راحت شده و برخلاف MFC وADO ActiveX
به سرعت میشه با یه DB در ارتباط بود.
در مورد ADO.Net مقاله ها و کتاب های فوق العاده خوبی وجود داره که اهمیت ADO و اینکه از چه بخش هایی
تشکیل شده رو نشون میده. این مقاله یک روش سریع برای ارتباط با یک DB در Access رو نشون میشه.
کلاس های مورد استفاده OleDbConnection و OleDbCommand و OleDbDataReader هستند.
همین طور که از اسم این سه کلاس مشخص هست از اولی برای ارتباط از دومی برای دستورات و از سومی
برای خوندن اطلاعات استفاده میشه. هرکدوم از این کلاس ها شامل متودها و خصوصیات مختلفی هست که
برای یک ارتباط استفاده میشه. برای درک بهتر از کار هرکدوم از کلاس ها بهتره در مورد ADO.Net مطالعه بشه.
(کلاس ها در ADO.Net به دو بخش کلی تقسیم میشن DataProvide و DataSet که در مورد هر کدوم مطالب
زیادی وجود داره که از این مقاله خارج هست.)
توضیحاتی که داده میشه بسیار کوتاه و مختصر هست :
اولین کاری باید انجام بدیم این هست که با DB مورد نظر ارتباط بر قرار کنیم. باید بدونیم که مثلاDB در کجا قرار
داره و یا از چه Provider ی استفاده میشه. برای این کار از کلاس OleDbConnection استفاده میکنیم.
با استفاده از OleDbCommand از دستورات مورد نظرمون در SQL استفاده میکنیم و بعدش با استفاده از
OleDbDataReader میتونیم اطلاعات مورد نظر رو بخونیم.
کد زیر این کار رو نجام میده :
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
میبینید که به سرعت میتونیم کدی برای ارتباط با DB بنویسیم. ممکنه بخوایم با خوندن اطلاعات از DB اون رو در
یک file ذخیره کنیم. در این صورت هم کافیه از کلاس File و StreamWriter استفاده کنیم.
که برنامه به این شکل در میاد :
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اساس ارتباط همیشه به این شکل هست. البته این مثال خیلی خیلی ساده بود. اما برای شروع خیلی خیلی
مفید هست و میشه گفت یه مقدمه ی ساده برای شروع کار با ADO.Net .
فکر میکنم کد واضح باشه. ولی هرجا نیاز به توضیح داشت اطلاع بدید تا در موردش با هم صحبت کنیم.