ورود

نسخه کامل مشاهده نسخه کامل : ADO.Net در #C



someone
25-03-2007, 23:28
سلام.
عیدتون مبارک.
به درخواست یکی از دوستان این متن رو نوشتم. اما چون سوال خوبی بود به عنوان پست در این 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 .
فکر میکنم کد واضح باشه. ولی هرجا نیاز به توضیح داشت اطلاع بدید تا در موردش با هم صحبت کنیم.

fariba_gh20
19-04-2007, 22:36
سلام
از ReadXML, WriteXML استفاده كردم و تقريبا كارم حل شد
فقط 1 مشكل پيش اومد ، اينكه در دو تا از جدولها از Identity استفاده كردم و زماني كه ميخوام
اطلاعات رو داخل جدول بريزم اين اجازه را به من نميده
حتي از دستور SET Identity Table OFF هم استفاده كردم ولي بازم جواب نميده
1 راه حل به من بگيد تا فردا بيشتر وقت ندارم

someone
24-04-2007, 20:12
دوباره سلام.
فکر کنم خیلی وقته از سوالتون میگذره. مشکل حل شد؟

fariba_gh20
26-04-2007, 22:03
سلام
حل شد ولي به سختي
اگه راه حلش رو ميدونيد، برام بگيد دوست دارم بدونم شايد با كاري كه خودم انجام دادم فرق داشته باشه

zarinjoi
17-02-2009, 23:13
سلام دوستان من برای ییرون کشیدن سطر خاصی از دیتابیسم اول اطلاعاتمو داخل دیتا گرید میارم بعد چک میکنم درواقع فقط بلدم
اطلاعاتمو به صورت دیتا ست برگردونم اگه میشه برگردوندن به صورت متغیر رو توضیح بدید ممنون میشم .

aram24
28-03-2009, 15:44
با سلام میشه در مورد کلیه کارهای انجام شده(Inser , Delete , Update, ... ) در یک بانک اطلاعاتی همراه با کد توضیح بدید لطفا توی SQL SERVER باشه با تشکر

milky way
28-03-2009, 16:23
با سلام میشه در مورد کلیه کارهای انجام شده(inser , delete , update, ... ) در یک بانک اطلاعاتی همراه با کد توضیح بدید لطفا توی sql server باشه با تشکر
اینا ربطی به ado خیلی پیدا نمیکنه مفاهیم پایه ای دیتا بیس و sql هست و البته خیلی ساده.