PDA

View Full Version : ذخیره و بازیابی در پایگاه داده سی شارپ



HOSSEINONLINE7
یک شنبه 11 فروردین 1392, 20:54 عصر
سلام دوستان سال نو مبارک
من برای ذخیره و بازیابی اطلاعات در پایگاه داده سی شارپ مشکل دارم یعنی در کدهاش ابهام دارم لطفا راهنماییم کنید :

لطفا کدها را برام توضیح بدبد :

1.
table1BindingSource.EndEdit();
table1TableAdapter.Update(dataSet1.Table1);
table1BindingSource.AddNew();


2.
this.table2TableAdapter.Fill(this.dataSet1.Table2) ;


3.میخوام یوزر پسورد دریافتی از کاربر با مقادیر دیتابیس مقایسه کنم که اگر موجود بود کاربر وارد بشه . چطور باید مقادیر جدول های دیتابیس را برای مقایسه بازیابی کنم ؟

دوستان تشکر

arash691
یک شنبه 11 فروردین 1392, 23:38 عصر
برای اینکه مقادیر جدول دیتا بیست رو بازیابی کنی در واقع باید یه جستجو انجام بدی که با .BindingSource این عمل صورت میگیره. بطور مثال فرض کن من از جدول login_table میخوام نام کاربری که به اسم id ذخیره کردم رو بازیابی کنم اگه id با مشخصاتی که از یک کنترل میگیرم مثل یه تکس باکس وجود داشته باشه دستور زیر یک عدد بر میگردونه که شماره سطر اون فیلد هستش در غیر اینصورت عدد -1 رو میده !

login_tableBindinSource.Find("field name","value get");
مقداره عددی که میده رو درون یک متغیر از نوع صحیح ذخیره میکنیم پس در نهایت برای اولی(نام کاربری) میشه :

int id = login_tableBindingSource.Find("ID", iDTextBox.Text);
و همین دستور رو برای پسورد انجام میدیم :

int pass = login_tableBindingSource.Find("Password", passwordTextBox.Text);
خوب دیگه حالا کار تمومه فقط یه شرط میخوایم که چک بکنه اعداد ذخیره شده درون id و pass مخالف -1 باشند و اینکه با هم برابر هم باشند یعنی مطابقت نام کاربری و پسورد هم رعایت شده باشه !
کل دستورات با چک کردن خطا بصورت زیر میتونه باشه :

try
{
if (iDTextBox.Text != "" && passwordTextBox.Text != "")
{
int id = login_tableBindingSource.Find("ID", iDTextBox.Text);
int pass = login_tableBindingSource.Find("Password", passwordTextBox.Text);
if (id != -1 && pass != -1 && id == pass)
{
// ورود به صفحه ی مورد نظر!
}
else
{
MessageBox.Show(" نام کاربری یا رمز عبور اشتباه است ");

}


}
else
{
MessageBox.Show("لطفا نام کاربری و رمز عبور را وارد کنید");

}
}
catch (Exception exp)
{
MessageBox.Show("خطا در سیستم", exp.Message);
}

esibarnamenevis
یک شنبه 11 فروردین 1392, 23:40 عصر
سلام
میتونستید اول یه سرچ بزنید که در مورد سوالاتون به طور کامل در تالار سوال و جواب والبته آموزش هست

esibarnamenevis
یک شنبه 11 فروردین 1392, 23:41 عصر
مشخصه که تازه وارد هستید

بهتون توصیه میکنم از آموزش های سایت استفاده کنید تا راه بیافتید

اگه فیلم یا مقاله آموزشی یا کمکی خواستید در خدمتیم

esibarnamenevis
یک شنبه 11 فروردین 1392, 23:53 عصر
اینم لینک اموزش هایی که خیلی خوبه واسه شروع با لینک مستقیم

لینک (http://barnamenevis.org/showthread.php?366166-%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%AA%D8%B5%D9%88%DB%8C%D8%B1%DB%8C-C&p=1731940&viewfull=1#post1731940)

HOSSEINONLINE7
دوشنبه 12 فروردین 1392, 00:25 صبح
از همه ی دوستان واقعا تشکر میکنم . در ضمن من خیلی سایتهای مختلف گشتم ولی مطلبی که بدرد بخوره گیر نیاوردم .

لطفا این چند کد را هم برای من توضیح بدهید نتونستم مطلب مناسبی دربارشون پیدا کنم :


table1BindingSource.EndEdit();
table1TableAdapter.Update(dataSet1.Table1);
table1BindingSource.AddNew();





this.table2TableAdapter.Fill(this.dataSet1.Table2) ;


تشکر

HOSSEINONLINE7
دوشنبه 12 فروردین 1392, 13:11 عصر
دوستان لطفا یک راهنمایی در مورد کدها بفرمایید ...

danialafshari
دوشنبه 12 فروردین 1392, 14:40 عصر
دوستان لطفا یک راهنمایی در مورد کدها بفرمایید ...

سلام دوست عزیز
این روش ویزاردی هست که با کمترین کدنویسی به بانک وصل میشه و اما توضیح :
table1BindingSource.EndEdit();
table1TableAdapter.Update(dataSet1.Table1);
table1BindingSource.AddNew();
با این کد به بایندینگ میگه که ویرایش تموم شده و در خط بعدی آپدیت می کنه و در خط آخر به جدول اضافه می کنه و در پایان هم DataAdapter اطلاعات رو Fill میکنه